Commit Graph
20 Commits
Author SHA1 Message Date
isaacclad 970a98ecfe Simplify Paystack checkout handoff
Deploy Ladill POS / deploy (push) Successful in 55s
2026-07-24 08:25:28 +00:00
isaacclad 21555cc3cc Simplify pay wait copy and scale Paystack to fill the loading area.
Deploy Ladill POS / deploy (push) Successful in 1m57s
Use “Please wait…” while loading, and scale the contained Paystack iframe so
checkout fills the sheet body without a floating second card.
2026-07-23 22:55:55 +00:00
isaacclad 97cd3c8647 Render Paystack flush in the sheet loading area without a second stage.
Deploy Ladill POS / deploy (push) Successful in 2m28s
Drop host shadows and keep the iframe transparent so checkout fills the
Ladill sheet body instead of floating as a second card.
2026-07-23 22:43:42 +00:00
isaacclad 77c7897e57 Force Paystack checkout into the sheet mount on first insert.
Deploy Ladill POS / deploy (push) Successful in 45s
Redirect first iframe append into the Ladill sheet body and keep absolute
fill styles applied so checkout is not a second full-screen modal.
2026-07-23 22:36:14 +00:00
isaacclad fe9137a754 Unify payment sheet to one POS design across all apps.
Deploy Ladill POS / deploy (push) Successful in 1m16s
Loading uses the standard white bottomsheet/modal; once Paystack Inline is
ready the host shell goes transparent so only Paystack's card shows on the
backdrop — no oversized second white frame on Merchant/Give/etc.
2026-07-21 23:15:47 +00:00
isaacclad 56d3c749c8 Tighten payment sheet UI to match POS single-surface checkout.
Deploy Ladill POS / deploy (push) Successful in 1m13s
When Paystack Inline is ready: widen desktop panel for channel sidebar, collapse
to a minimal header, hide footer trust line, and re-pin the checkout iframe to
the sheet body so it does not read as a second modal on top of Ladill chrome.
2026-07-21 23:02:37 +00:00
isaacclad a95f84e0e0 Contain Paystack Inline checkout inside Ladill sheet mount.
Deploy Ladill POS / deploy (push) Successful in 1m20s
Redirect Paystack iframes into the bottomsheet/modal body (where the spinner
is) instead of allowing a second full-viewport Paystack modal on top. Hide
Paystack background dimmer; keep Ladill header/close chrome.
2026-07-21 22:32:01 +00:00
isaacclad 2c763cf46a Fix Paystack Fullscreen permission policy for Inline iframes.
Deploy Ladill POS / deploy (push) Successful in 1m4s
Pre-set allow=fullscreen on Paystack iframes before navigation (createElement
hook + MutationObserver on allow/src/id), re-apply if Paystack overwrites
allow, and send Permissions-Policy HTTP headers so checkout.paystack.com can
use fullscreen inside the in-app sheet.
2026-07-21 22:17:20 +00:00
isaacclad ec8fe8611f Allow Paystack checkout iframes to use fullscreen in POS.
Deploy Ladill POS / deploy (push) Successful in 52s
Patch Inline iframes after mount so fullscreen/payment permissions work
inside the POS payment bottomsheet.
2026-07-21 22:09:58 +00:00
isaacclad dc65bc44ac Fix POS payment sheet host and harden Inline launch.
Deploy Ladill POS / deploy (push) Successful in 42s
Use this.\$store in the host component so the bottomsheet opens, and share
the hardened Paystack sheet sync path used across apps.
2026-07-21 21:55:45 +00:00
isaacclad 26b3201822 Fix POS payment bottomsheet wrap and store reactivity.
Deploy Ladill POS / deploy (push) Successful in 40s
Mirror paymentCheckout into local Alpine state so the teleported sheet opens,
and restore the always-visible bottomsheet/modal shell around Inline.
2026-07-21 21:43:52 +00:00
isaacclad 5c23df9561 Fix POS Paystack double modal and keep checkout in-app.
Pass access_code into the payment sheet, launch Paystack Inline only,
and hide Ladill chrome after Inline loads so register Card/MoMo shows
a single payment interface.
2026-07-21 21:23:21 +00:00
isaacclad ca08f303c0 Restore Paystack Inline in-page sheet/modal; stop separate-browser checkout.
Deploy Ladill POS / deploy (push) Successful in 2m8s
Pass access_code through pay responses and launch PaystackPop from the shared sheet instead of window.open.
2026-07-21 19:12:24 +00:00
isaacclad 497cdfbe8e Open Paystack from the Pay click gesture, not after fetch.
Deploy Ladill POS / deploy (push) Successful in 54s
Paystack blocks iframes, so checkout uses a popup beside the sheet/modal chrome. Opening about:blank on the user tap keeps that window from being blocked after the async initiate response.
2026-07-21 18:13:56 +00:00
isaacclad c9c8278500 Fix Paystack sheet: stop iframe embeds that Paystack blocks.
Deploy Ladill POS / deploy (push) Successful in 38s
Paystack checkout.paystack.com returns X-Frame-Options: SAMEORIGIN, so the shared sheet opened empty. Keep mobile sheet/desktop modal chrome, launch checkout in a named window with a Continue CTA fallback, and escape payment-return via window.opener or top.
2026-07-21 17:35:17 +00:00
isaacclad 4f97b6ff70 Present Paystack checkout in a responsive mobile sheet and desktop modal.
Deploy Ladill POS / deploy (push) Successful in 37s
Standardize customer-facing Ladill Pay checkout shells across products, open them on all viewports, and escape iframe callbacks back to the product flow.
2026-07-21 16:50:07 +00:00
isaacclad 7c20cf705a Frame POS checkout sheet for till operators.
Deploy Ladill POS / deploy (push) Successful in 1m16s
Use operator-facing copy and merchant email so Card/MoMo checkout is for staff handing the screen to a customer, not self-serve buyers.
2026-07-15 13:23:29 +00:00
isaaccladandCursor 3c0172f098 Embed POS checkouts in a modal/sheet using the seller email.
Deploy Ladill POS / deploy (push) Successful in 40s
Card/MoMo always initializes with the merchant email, and Paystack/Flutterwave/Hubtel open in-page (desktop modal, mobile bottomsheet) instead of a full redirect.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 08:29:07 +00:00
isaaccladandClaude Opus 4.8 b7c7a32ee6 De-fork POS chrome/assets and import CRM products only
Deploy Ladill POS / deploy (push) Successful in 32s
Finish removing the upstream platform fork: drop the Hosting/SSL/Domain
notification classes + their mail views, the email/mailbox/domains/hosting
view trees, the Mini/Afia/search/paystack partials and unused components, and
the now-orphan support helpers (DomainConfig, MailboxPricing,
ResellerClubLegacy), SmsService, and fork configs (afia, hosting, domain,
email, mailbox, qr, mail_brands, notifications, ...). Reparent the
notifications page off the hosting layout onto the POS app layout (it had
referenced undefined hosting./mini. routes). Computed the removable set from a
reachability scan of the POS view graph; kept views reference no removed
routes/services.

Branding: favicon now uses the updated favicon.ico (favicon.svg removed);
signed-out fallback logo points at the POS logo.

CRM import: constrain the catalogue pull to type=product so CRM services are
never imported as POS products (server-side filter + defensive client skip).

Test suite green (8 passed, 29 assertions); all routes resolve and every
remaining Blade compiles.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 00:40:01 +00:00
isaaccladandCursor e5d2b84388 Add Ladill POS v1 — register, Pay checkout, and commerce links.
Deploy Ladill Mini / deploy (push) Successful in 23s
Staff-facing counter register at pos.ladill.com with catalog cart, cash and
MoMo/card checkout via Ladill Pay, CRM timeline/import, invoice prefill, and
Merchant catalog import.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 22:52:24 +00:00