Daniel Arantes Loverde
23d9752bfd
Almost done
2026-06-08 10:46:52 -03:00
Daniel Arantes Loverde
18818f909a
cards
2026-06-05 16:32:08 -03:00
Daniel Arantes Loverde
eae9613ed5
fix(checkout): display snackbar on top of sheet modals
2026-06-04 16:17:34 -03:00
Daniel Arantes Loverde
39ddf9c86c
fix(api): map API response error payload and validate card saving synchronously
2026-06-04 16:06:22 -03:00
Daniel Arantes Loverde
8c19b1323c
fix(payment): accept either 2-digit or 4-digit years in card expiry validation
2026-06-04 15:58:52 -03:00
Daniel Arantes Loverde
f49e4ea337
fix(payment): validate card expiry date month range and fix PaymentCardView character length
2026-06-04 15:48:00 -03:00
Daniel Arantes Loverde
2809131c25
fix(payment): move detectedBrandLogo computed property into correct scope inside PaymentCardView
2026-06-04 15:41:30 -03:00
Daniel Arantes Loverde
b633adad61
Merge branch 'feature/card-management' into feature/card-brand-logo
...
# Conflicts:
# pedi-foods/Sources/PediFoods/Views/Main/CheckoutView.swift
2026-06-04 15:38:50 -03:00
Daniel Arantes Loverde
c31875ec3b
fix(payment): set text field foreground color to brandDark for card input fields
2026-06-04 15:28:20 -03:00
Daniel Arantes Loverde
a319a8f534
feat(payment): add custom logo for PIX payment method
2026-06-04 15:27:15 -03:00
Daniel Arantes Loverde
46d955a92f
feat(payment): identify card brand and display logo dynamically
2026-06-04 15:23:02 -03:00
Daniel Arantes Loverde
ee8745553e
feat(payment): implement change payment method (PATCH /payment-method)
...
- ChangePaymentMethodPayload + ChangePaymentMethodResult models
- ApiService.changePaymentMethod()
- PixPaymentContext gains storeId + order data for payment switch
- PaymentPixView: Trocar button opens ChangePaymentSheet with 3 options
- ChangePaymentSheet: Novo PIX (new QR), Cartão (saved or new), Pagar na Entrega
- ChangePaymentCardSheet + ChangePaymentNewCardView with same card masks/validation
- OrdersView/OrderEntryDestinationView: threaded appState binding
2026-06-03 18:49:07 -03:00
Daniel Arantes Loverde
9525c19b6b
fix(cards): propagate API validation error message to user on card submit failure
2026-06-03 18:06:43 -03:00
Daniel Arantes Loverde
abd58ac36d
feat(cards): add input masks and char limits to card form fields
...
- Card number: groups of 4 digits (0000 0000 0000 0000), max 16 digits
- Expiry: MM/AAAA mask, max 6 digits
- CVV: digits only, max 4
- CPF: 000.000.000-00 mask, max 11 digits
- canSubmit validates stripped digit counts
2026-06-03 17:58:44 -03:00
Daniel Arantes Loverde
a548955320
fix(cards): replace NavigationStack header with custom X button, new card form opens as sheet
2026-06-03 17:44:10 -03:00
Daniel Arantes Loverde
6b397db494
feat(cards): implement full saved card management and transparent checkout
...
- ApiCardModels.swift: SavedCard, SaveCardPayload, CreditCardOrderPayload, etc.
- ApiOrderModels.swift: add savedCardId, clientCpfCnpj, creditCard, creditCardHolderInfo to CreateOrderPayload; Codable for item/addon payloads
- ApiService.swift: listCards, saveCard, updateCard, deleteCard, updateProfileCpf
- AppState.ProfileState: add cpf field
- CheckoutView: CardSelectionSheet (list saved cards + add new), rewrite PaymentCardView (submits order with card data), CardPaymentContext carries full order data
- CheckoutView+Logic: buildCreateOrderPayload accepts card params, new loadSavedCards/confirmOrderWithSavedCard/handleOrderResponse helpers, redirect credit card confirm to CardSelectionSheet
- OrdersView: CREDIT_CARD pending orders go to tracking (not card form, since card is now submitted with order)
- UserProfileView: CPF field with mask, save via PATCH /api/customer/profile
2026-06-03 17:32:30 -03:00
Daniel Arantes Loverde
2d27240cee
feat(checkout): replace dual payment group cards with single toggle switch
...
Toggle ON = Pagar Pelo App (default), shows in-app methods (PIX, Credit Card)
Toggle OFF = Pagar Na Maquininha, shows store machine methods
Automatically resets paymentMethod on toggle switch
Removes paymentGroupCard helper, saves vertical space
2026-06-03 15:49:26 -03:00
Daniel Arantes Loverde
f51319b486
master merged
2026-06-03 14:52:27 -03:00
Daniel Arantes Loverde
9bdb9dfdea
feat(android): complete first successful skip export
2026-03-20 10:56:22 -03:00
Daniel Arantes Loverde
cb7bfef356
fix(android): isolate platform-specific shared ui code
2026-03-19 16:11:07 -03:00
Daniel Arantes Loverde
ca83a275ac
payment and list
2026-02-24 10:19:47 -03:00
Daniel Arantes Loverde
3a3dc7217b
Fix login
2026-02-21 18:51:39 -03:00
Daniel Arantes Loverde
0f5ad4c268
Payments
2026-02-15 08:18:06 -03:00