feat(components): bank-selection redirect methods, iDEAL/Dotpay (ORC-6514)#387
feat(components): bank-selection redirect methods, iDEAL/Dotpay (ORC-6514)#387OnurVar wants to merge 1 commit into
Conversation
Generated by 🚫 Danger Swift against 4730dbf |
|
Generated by 🚫 Danger Kotlin against 4730dbf |
There was a problem hiding this comment.
✅ No issues found
About Unblocked
Unblocked has been set up to automatically review your team's pull requests to identify genuine bugs and issues.
📖 Documentation — Learn more in our docs.
💬 Ask questions — Mention @unblocked to request a review or summary, or ask follow-up questions.
👍 Give feedback — React to comments with 👍 or 👎 to help us improve.
⚙️ Customize — Adjust settings in your preferences.
01d6bca to
630a84e
Compare
…entMethod (ORC-6514) Banks ride the generic hook's bankSelection variant; drop the iDEAL-only bridge gate.
4730dbf to
13fb92e
Compare
Summary
Bank-selection redirect methods (iDEAL on both platforms, Dotpay on Android) now flow through the generic
usePrimerPaymentMethod(type)— narrow onkind: 'bankSelection'. Fifth step of the APM hook unification (after Google Pay #376, Apple Pay #374, PayPal #385, foundational #386).This is the first "build the vertical slice" PR: the bespoke
usePrimerBankshook +BanksControllertype are gone; their surface folds into abankSelectionvariant of the one hook, and the prebuiltBankSelectionScreennow dogfoods that public API.What's here
usePrimerPaymentMethod('ADYEN_IDEAL')→kind: 'bankSelection'withbanks,selectedBankId,start()(fetch issuers),filter(text),selectBank(id),submit()(launch the bank redirect). Outcome arrives on the sharedpaymentOutcome.COMPONENT_WITH_REDIRECT → bankSelectionin the sharedrouteMethodSelection;MethodSelectionScreengets the matching case; the category union gainsCOMPONENT_WITH_REDIRECT.ComponentWithRedirectManagerlifecycle (issuer fetch, step/error events) + the bank sub-actions — the native SDK owns the redirect + status polling.ComponentWithRedirectManager.providedrops its hard-coded=== 'ADYEN_IDEAL'gate so any redirect method (incl. Dotpay) is served; the nativeconfigure(type)validates. TS wrapper only — no native change.BankSelectionScreenrebuilt onusePrimerPaymentMethod(wasusePrimerBanks).Breaking change
usePrimerBanksandBanksControllerare removed — useusePrimerPaymentMethod(type)and narrow onkind: 'bankSelection'.Base
ov/feat/ORC-6514-foundational(#386).Jira
ORC-6514
Test plan
yarn typecheck/yarn lint— cleanyarn jest— green bar the known tr_TR localization flake; new router case + 5bankSelectioncases (routes tobankSelection; available on both platforms when listed;start()configures + fetches issuers;selectBank/submitforward to native)onCheckoutComplete(sandbox payment succeeded)COMPONENT_WITH_REDIRECTpath as iDEAL) + theADYEN_DOTPAY → bankSelectionunit test + the dropped iDEAL-only bridge gate.