Commit Graph
88 Commits
Author SHA1 Message Date
isaaccladandCursor 0b0193b5d7 Hide header avatar on mobile and sync shared mobile nav partials.
Deploy Ladill Mini / deploy (push) Successful in 37s
Profile moves to the bottom nav sheet on small screens; optional search tab
support is synced from the Ladill platform template.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 12:04:32 +00:00
isaacclad 297f7646f8 Sync app launcher from registry — add Frontdesk.
Deploy Ladill Mini / deploy (push) Successful in 29s
2026-06-28 01:46:21 +00:00
isaaccladandCursor 88da4ff62a Sync app launcher from registry
Deploy Ladill Mini / deploy (push) Successful in 33s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 19:03:57 +00:00
isaaccladandCursor 10ccb397ae Sync app launcher from registry
Deploy Ladill Mini / deploy (push) Successful in 32s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 18:28:04 +00:00
isaaccladandCursor 517d7c52e3 Redirect legacy /q/* URLs to canonical ladl.link addresses.
Deploy Ladill Mini / deploy (push) Successful in 25s
External /q requests 301/307 to ladl.link; internal X-Ladill-Internal requests still serve content for platform proxying.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 17:19:04 +00:00
isaaccladandCursor a07dd558a3 Wire LadillLink through QrCode model and remaining QR surfaces.
Deploy Ladill Mini / deploy (push) Successful in 35s
Public URLs, encoded payloads, slug preview, payment callbacks, and asset paths now use ladl.link instead of ladill.com/q/*.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 16:16:25 +00:00
isaaccladandCursor 3fd5d785e3 Use ladl.link URLs for all front-facing QR and short-link surfaces.
Deploy Ladill Mini / deploy (push) Successful in 39s
Public landing pages, asset paths, payment callbacks, and redirects now go through QrCode::publicPath() / LadillLink instead of ladill.com/q/* routes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 15:46:22 +00:00
isaacclad d66200e10d Sync app launcher from registry
Deploy Ladill Mini / deploy (push) Successful in 36s
2026-06-27 15:15:44 +00:00
0ae4f6d3df Add Accounting to the app launcher
Deploy Ladill Mini / deploy (push) Successful in 37s
Ladill Accounting is now live at accounting.ladill.com; add its row + icon to
the shared app launcher (byte-identical across all Ladill apps).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 13:49:04 +00:00
isaaccladandClaude Opus 4.8 c6cdbab469 Add branded boot splash (Ladill Mail style) on app pages
Deploy Ladill Mini / deploy (push) Successful in 26s
InjectBootSplash middleware shows a self-branded loading splash once per session
while the app boots, then fades out.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 22:14:46 +00:00
isaaccladandClaude Opus 4.8 8e2f430502 Update POS launcher icon (app launcher + marketing)
Deploy Ladill Mini / deploy (push) Successful in 24s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 07:46:36 +00:00
isaaccladandCursor dfad9461e8 Sync app launcher config and add POS icon.
Deploy Ladill Mini / deploy (push) Successful in 27s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 22:53:18 +00:00
isaaccladandCursor 84471c3081 Standardize desktop topbar widgets to match CRM layout.
Deploy Ladill Mini / deploy (push) Successful in 24s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 18:15:34 +00:00
isaaccladandClaude Opus 4.8 9cbdd1a26c Add wallet balance widget to the profile menu (after Billing)
Deploy Ladill Mini / deploy (push) Successful in 25s
Wallet balance peek rendered as a menu row directly under Billing, backed by
a /wallet/balance endpoint (BillingClient) and guarded by Route::has. Also
opens Afia via a direct window event for reliability.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 12:26:03 +00:00
isaaccladandCursor 99f994f4e5 Add slash keyboard shortcut to focus search.
Deploy Ladill Mini / deploy (push) Successful in 31s
Press / from any non-input page to jump to the topbar or full-screen search field, with a fallback route when search is not visible.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 02:51:39 +00:00
isaaccladandClaude Opus 4.8 fd1a94d79d Add CRM to the Ladill app launcher
Deploy Ladill Mini / deploy (push) Successful in 1m4s
crm.ladill.com is now live in the suite; add its launcher row + icon
(byte-identical shared launcher config).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 22:41:28 +00:00
isaaccladandClaude Opus 4.8 526e0f0038 Add Invoice to the app launcher
Deploy Ladill Mini / deploy (push) Successful in 24s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 14:19:12 +00:00
isaaccladandCursor ea51b49342 Serve assetlinks.json for Android App Links verification.
Deploy Ladill Mini / deploy (push) Successful in 40s
Expose /.well-known/assetlinks.json from env-configured Play app signing fingerprints so mini.ladill.com passes Play Console deep link domain checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 00:08:56 +00:00
isaaccladandCursor 094bd5b886 Bind app sessions to the platform auth session.
Deploy Ladill Mini / deploy (push) Successful in 26s
Clear local sessions when auth.ladill.com signs out and ping the platform session from keepalive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 08:26:30 +00:00
isaaccladandCursor 2b4445302c Add Ladill SMS to shared app launcher.
Deploy Ladill Mini / deploy (push) Successful in 30s
Include sms.ladill.com in the cross-app launcher and ship the SMS icon asset.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 23:12:36 +00:00
isaaccladandCursor 1ef6148ee3 Lower Mini platform fee from 5% to 3.5%.
Deploy Ladill Mini / deploy (push) Successful in 26s
Update checkout constant, payout copy, and Afia prompts to match the new Ladill Pay rate.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 19:51:35 +00:00
isaaccladandCursor ab84f66128 Hide the current page link in the unified profile dropdown.
Deploy Ladill Mini / deploy (push) Successful in 59s
Skip Home, account, and admin menu items when the user is already on that destination.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 10:16:39 +00:00
isaaccladandCursor de9ea50744 Fix corrupted profileMenuItems in layouts after menu propagation.
Deploy Ladill Mini / deploy (push) Successful in 54s
Remove orphaned array entries that caused Blade parse errors and 500 responses on authenticated pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 10:04:42 +00:00
isaaccladandCursor 3e76b06bc9 Unify logged-in profile dropdown with platform account menu.
Deploy Ladill Mini / deploy (push) Successful in 34s
Wire UserProfileMenu and shared Blade partial into topbar, mobile nav, and layouts so menu items match the account portal (Ladill Mail excluded).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 09:33:55 +00:00
isaaccladandCursor b3de340fdc Remove centralized account nav from app sidebar; redirect legacy URLs.
Deploy Ladill Mini / deploy (push) Successful in 28s
Wallet, Billing, Team, Developers, and Support live on account.ladill.com.
Siloed sidebars keep product nav and app Settings only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 00:42:25 +00:00
isaaccladandCursor 4d4b7a05f5 Restore silent SSO on app entry for users switching between apps.
Deploy Ladill Mini / deploy (push) Successful in 26s
Guests without a local session try prompt=none SSO first; marketing pages
are only for visitors with no platform session (localhost fix retained).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 13:47:12 +00:00
isaaccladandCursor 9ff73ed17b Fix guest entry: correct marketing URL and stop auto silent SSO.
Deploy Ladill Mini / deploy (push) Successful in 37s
Correct localhost marketing_url default and stop redirecting guests through
/sso/connect on visit; SSO starts only via explicit sign-in.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 13:08:56 +00:00
isaaccladandCursor df07b9731d Send SSO guests to ladill.com/products/mini instead of subdomain landings.
Deploy Ladill Mini / deploy (push) Successful in 39s
Remove interactive OAuth fallback on silent SSO failure and add ladill.marketing_url config so app subdomains open the dashboard when signed in locally.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 22:21:52 +00:00
isaaccladandCursor b952020890 Fix auto-withdraw deploy and accept POST on wallet settings route.
Deploy Ladill Mini / deploy (push) Successful in 37s
Drop the fragile column ordering in the migration and allow POST as well as PUT so the mobile clients can save auto-withdraw after deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 08:02:42 +00:00
isaaccladandCursor 2c4eaf1241 Add wallet auto-withdraw threshold support for Ladill Mini.
Deploy Ladill Mini / deploy (push) Failing after 42s
Store per-user auto-withdraw amounts, expose them via the wallet API, and process withdrawals when balances reach the configured threshold after payments or on a schedule.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 07:44:42 +00:00
isaaccladandCursor 9790788d42 Ignore local mobile app sources under /apps.
Deploy Ladill Mini / deploy (push) Successful in 28s
Keep Android and iOS prototypes out of this repo so they are not committed with backend changes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 22:32:33 +00:00
isaacclad 1dba54c55b Revert "Add Ladill Mini native Android and iOS apps."
This reverts commit ea6afb80a4.
2026-06-11 22:32:29 +00:00
isaaccladandCursor ea6afb80a4 Add Ladill Mini native Android and iOS apps.
Deploy Ladill Mini / deploy (push) Successful in 35s
Ship full-featured mobile clients with auth, payments, QRs, push notifications, and iOS polish including Figtree typography, app icons, and QR previews.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 22:30:35 +00:00
isaaccladandCursor ec9f09f997 Fix payment notification copy to say paid to the business, not via.
Deploy Ladill Mini / deploy (push) Successful in 29s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 19:26:36 +00:00
isaaccladandCursor 136bfbea47 Wire seller push notifications with FCM, inbox API, and payment milestones.
Deploy Ladill Mini / deploy (push) Successful in 52s
Sellers get instant payment alerts on Android; withdrawals respect payout prefs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 19:04:44 +00:00
isaaccladandCursor ad96754099 Add Mini API endpoint for Afia chat so the Android app can reach the assistant with Bearer auth.
Deploy Ladill Mini / deploy (push) Successful in 28s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 18:12:32 +00:00
isaaccladandClaude Opus 4.8 06efef53b6 Mini API: include saved phone in account settings.
Deploy Ladill Mini / deploy (push) Successful in 30s
settings() now fetches phone from the central identity profile (guarded), so the
app's Profile screen shows the phone the user previously saved.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 13:11:17 +00:00
isaaccladandClaude Opus 4.8 1b134d7fd3 Mini API: banks endpoint for payout-account picker.
Deploy Ladill Mini / deploy (push) Successful in 1m22s
GET /api/v1/mini/wallet/banks?type=bank|mobile_money proxies to the central
identity banks endpoint so the app's payout sheet populates from Paystack.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 12:52:19 +00:00
isaaccladandClaude Opus 4.8 3406bd730a Mini API: support ticket endpoints (replaces Afia support chat).
Deploy Ladill Mini / deploy (push) Successful in 28s
Support is now a ticket system proxied to the central identity support API:
GET/POST /mini/support/tickets and GET /mini/support/tickets/{id}. Removed the
Afia-backed /support/chat route.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 12:29:35 +00:00
isaaccladandClaude Opus 4.8 af1f197059 Mini API: avatar, wallet payout/withdraw, stale-payment auto-cancel.
Deploy Ladill Mini / deploy (push) Successful in 48s
Adds account avatar upload (multipart proxy to identity), wallet payout-account
+ withdrawal endpoints, and a hourly mini:cancel-stale-payments command that
cancels payments pending beyond 6h (new MiniPayment::STATUS_CANCELED).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 12:03:48 +00:00
isaaccladandClaude Opus 4.8 c39e38cbe0 Mini API: account settings, wallet & support endpoints for the app.
Deploy Ladill Mini / deploy (push) Successful in 40s
Adds /api/v1/mini account (settings, profile, change-password), wallet (balance
+ ledger, Paystack top-up) and support (Afia chat) endpoints. Account/profile/
password/top-up proxy to the central identity API via a CallsIdentityApi trait;
notifications, wallet balance and support chat are served locally.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 11:03:33 +00:00
isaaccladandClaude Opus 4.8 90d7aab547 Fix 500 on mobile sign-in: acting account + connection errors.
Deploy Ladill Mini / deploy (push) Successful in 1m31s
presentUser() ran on the public login/register routes where SetActingAccount
never runs, so ladill_account() was null and dereferencing it 500'd. Default
the acting account to the user at sign-in, and route identity-API calls through
a helper with timeouts that turns ConnectionException into a clean message
instead of an unhandled 500.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 09:51:41 +00:00
isaaccladandClaude Opus 4.8 a286f3d977 Afia: render markdown bold in chat instead of showing raw asterisks
Deploy Ladill Mini / deploy (push) Successful in 1m3s
Replies came back with **bold** markup that displayed literally to users.
Render the bubble as HTML (escaped first for safety) and convert **text** to
<strong>; newlines already handled by whitespace-pre-line.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 08:41:14 +00:00
isaaccladandClaude Opus 4.8 9f175c5334 Afia: fix context() calling undefined QrTypeCatalog::eventTypes()
Deploy Ladill Mini / deploy (push) Successful in 27s
Use paymentTypes() (this app's catalog) so the chat context loads instead of
500ing — the eventTypes() call was a QR Plus leftover.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 07:45:17 +00:00
isaaccladandClaude Opus 4.8 2065306541 Afia: rebrand assistant from QR Plus to Ladill Mini
Deploy Ladill Mini / deploy (push) Successful in 1m13s
Mini shipped the QR Plus Afia prompt. Rewrite it for Ladill Mini — payment
QRs, payments, payouts, 5% fee.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 07:34:17 +00:00
isaaccladandClaude Opus 4.8 cd56771b59 Mobile auth: native login + register via central identity API.
Deploy Ladill Mini / deploy (push) Successful in 31s
Login no longer uses the OAuth password grant (which wasn't enabled, the cause
of login failures). Both login and the new register endpoint proxy to
auth.ladill.com /api/identity/auth/* (shared IDENTITY_API_KEY_MINI), provision
the local mirror, and issue a Sanctum token — one Ladill identity across web
and app.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 23:04:04 +00:00
isaaccladandClaude Opus 4.8 307248749b Add mobile API for Ladill Mini Android app.
Deploy Ladill Mini / deploy (push) Successful in 47s
Token login via OAuth password grant against auth.ladill.com (AuthController),
plus /api/v1/mini endpoints (overview, payment-qrs CRUD + preview, payments,
payouts) mirroring the web Mini controllers. Sanctum abilities mini:read/write.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 22:13:30 +00:00
isaaccladandClaude Opus 4.8 70ded0e668 Add product landing page at root (replaces SSO redirect).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 22:13:30 +00:00
isaaccladandClaude Opus 4.8 019c450cdd Per-app logout keeps platform SSO session (quick password-less re-entry).
Deploy Ladill Mini / deploy (push) Successful in 1m14s
Local-only sign-out: end this app's session but leave the auth.ladill.com
session intact, so the signed-out page's Sign in again re-auths silently via
prompt=none. Full sign-out of all Ladill apps remains on account.ladill.com.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 11:23:33 +00:00
isaaccladandClaude Opus 4.8 5a64c8e52f Add Merchant to app launcher.
Deploy Ladill Mini / deploy (push) Successful in 41s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 11:03:10 +00:00