@daimo/sdk 1.7.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/README.md +18 -0
  2. package/dist/client/createDaimoClient.d.ts +16 -4
  3. package/dist/client/createDaimoClient.d.ts.map +1 -1
  4. package/dist/client/createDaimoClient.js +31 -3
  5. package/dist/client/createDaimoClient.js.map +1 -1
  6. package/dist/common/account.d.ts +419 -13
  7. package/dist/common/account.d.ts.map +1 -1
  8. package/dist/common/account.js +278 -0
  9. package/dist/common/account.js.map +1 -1
  10. package/dist/common/api.d.ts +7 -5
  11. package/dist/common/api.d.ts.map +1 -1
  12. package/dist/common/api.js +13 -12
  13. package/dist/common/api.js.map +1 -1
  14. package/dist/common/api.test.d.ts +2 -0
  15. package/dist/common/api.test.d.ts.map +1 -0
  16. package/dist/common/api.test.js +21 -0
  17. package/dist/common/api.test.js.map +1 -0
  18. package/dist/common/constants.d.ts +5 -0
  19. package/dist/common/constants.d.ts.map +1 -0
  20. package/dist/common/constants.js +5 -0
  21. package/dist/common/constants.js.map +1 -0
  22. package/dist/common/frameMessages.d.ts +26 -0
  23. package/dist/common/frameMessages.d.ts.map +1 -0
  24. package/dist/common/frameMessages.js +54 -0
  25. package/dist/common/frameMessages.js.map +1 -0
  26. package/dist/common/frameMessages.test.d.ts +2 -0
  27. package/dist/common/frameMessages.test.d.ts.map +1 -0
  28. package/dist/common/frameMessages.test.js +42 -0
  29. package/dist/common/frameMessages.test.js.map +1 -0
  30. package/dist/common/frameReadiness.d.ts +22 -0
  31. package/dist/common/frameReadiness.d.ts.map +1 -0
  32. package/dist/common/frameReadiness.js +33 -0
  33. package/dist/common/frameReadiness.js.map +1 -0
  34. package/dist/common/frameReadiness.test.d.ts +2 -0
  35. package/dist/common/frameReadiness.test.d.ts.map +1 -0
  36. package/dist/common/frameReadiness.test.js +76 -0
  37. package/dist/common/frameReadiness.test.js.map +1 -0
  38. package/dist/native/DaimoFrameRN.d.ts +72 -0
  39. package/dist/native/DaimoFrameRN.d.ts.map +1 -0
  40. package/dist/native/DaimoFrameRN.js +244 -0
  41. package/dist/native/DaimoFrameRN.js.map +1 -0
  42. package/dist/native/index.d.ts +5 -0
  43. package/dist/native/index.d.ts.map +1 -0
  44. package/dist/native/index.js +10 -0
  45. package/dist/native/index.js.map +1 -0
  46. package/dist/version.d.ts +1 -1
  47. package/dist/version.js +1 -1
  48. package/dist/web/api/index.d.ts +24 -0
  49. package/dist/web/api/index.d.ts.map +1 -1
  50. package/dist/web/api/index.js +6 -1
  51. package/dist/web/api/index.js.map +1 -1
  52. package/dist/web/api/navTree.d.ts +5 -2
  53. package/dist/web/api/navTree.d.ts.map +1 -1
  54. package/dist/web/components/BankLogo.d.ts +8 -0
  55. package/dist/web/components/BankLogo.d.ts.map +1 -0
  56. package/dist/web/components/BankLogo.js +9 -0
  57. package/dist/web/components/BankLogo.js.map +1 -0
  58. package/dist/web/components/ChooseOptionPage.d.ts +2 -1
  59. package/dist/web/components/ChooseOptionPage.d.ts.map +1 -1
  60. package/dist/web/components/ChooseOptionPage.js +7 -4
  61. package/dist/web/components/ChooseOptionPage.js.map +1 -1
  62. package/dist/web/components/ChooseOptionPage.test.d.ts +2 -0
  63. package/dist/web/components/ChooseOptionPage.test.d.ts.map +1 -0
  64. package/dist/web/components/ChooseOptionPage.test.js +29 -0
  65. package/dist/web/components/ChooseOptionPage.test.js.map +1 -0
  66. package/dist/web/components/Countdown.d.ts +4 -1
  67. package/dist/web/components/Countdown.d.ts.map +1 -1
  68. package/dist/web/components/Countdown.js +24 -10
  69. package/dist/web/components/Countdown.js.map +1 -1
  70. package/dist/web/components/Countdown.test.d.ts +2 -0
  71. package/dist/web/components/Countdown.test.d.ts.map +1 -0
  72. package/dist/web/components/Countdown.test.js +16 -0
  73. package/dist/web/components/Countdown.test.js.map +1 -0
  74. package/dist/web/components/DaimoFrame.d.ts +3 -2
  75. package/dist/web/components/DaimoFrame.d.ts.map +1 -1
  76. package/dist/web/components/DaimoFrame.js +36 -18
  77. package/dist/web/components/DaimoFrame.js.map +1 -1
  78. package/dist/web/components/DaimoModal.d.ts +16 -1
  79. package/dist/web/components/DaimoModal.d.ts.map +1 -1
  80. package/dist/web/components/DaimoModal.js +147 -64
  81. package/dist/web/components/DaimoModal.js.map +1 -1
  82. package/dist/web/components/DaimoRampPreview.d.ts +12 -0
  83. package/dist/web/components/DaimoRampPreview.d.ts.map +1 -0
  84. package/dist/web/components/DaimoRampPreview.js +21 -0
  85. package/dist/web/components/DaimoRampPreview.js.map +1 -0
  86. package/dist/web/components/ExchangePage.d.ts.map +1 -1
  87. package/dist/web/components/ExchangePage.js +6 -1
  88. package/dist/web/components/ExchangePage.js.map +1 -1
  89. package/dist/web/components/ExternalPaymentPage.d.ts.map +1 -1
  90. package/dist/web/components/ExternalPaymentPage.js +3 -2
  91. package/dist/web/components/ExternalPaymentPage.js.map +1 -1
  92. package/dist/web/components/ModalChrome.d.ts +9 -12
  93. package/dist/web/components/ModalChrome.d.ts.map +1 -1
  94. package/dist/web/components/ModalChrome.js +40 -41
  95. package/dist/web/components/ModalChrome.js.map +1 -1
  96. package/dist/web/components/account/AccountApplePayPage.d.ts +4 -3
  97. package/dist/web/components/account/AccountApplePayPage.d.ts.map +1 -1
  98. package/dist/web/components/account/AccountApplePayPage.js +85 -50
  99. package/dist/web/components/account/AccountApplePayPage.js.map +1 -1
  100. package/dist/web/components/account/AccountApprovalPage.d.ts +34 -0
  101. package/dist/web/components/account/AccountApprovalPage.d.ts.map +1 -0
  102. package/dist/web/components/account/AccountApprovalPage.js +145 -0
  103. package/dist/web/components/account/AccountApprovalPage.js.map +1 -0
  104. package/dist/web/components/account/AccountBankDetailsPage.d.ts +4 -3
  105. package/dist/web/components/account/AccountBankDetailsPage.d.ts.map +1 -1
  106. package/dist/web/components/account/AccountBankDetailsPage.js +12 -10
  107. package/dist/web/components/account/AccountBankDetailsPage.js.map +1 -1
  108. package/dist/web/components/account/AccountBankPickerPage.d.ts +6 -9
  109. package/dist/web/components/account/AccountBankPickerPage.d.ts.map +1 -1
  110. package/dist/web/components/account/AccountBankPickerPage.js +52 -23
  111. package/dist/web/components/account/AccountBankPickerPage.js.map +1 -1
  112. package/dist/web/components/account/AccountDeeplinkPage.d.ts +3 -1
  113. package/dist/web/components/account/AccountDeeplinkPage.d.ts.map +1 -1
  114. package/dist/web/components/account/AccountDeeplinkPage.js +17 -9
  115. package/dist/web/components/account/AccountDeeplinkPage.js.map +1 -1
  116. package/dist/web/components/account/AccountEmailPage.d.ts +2 -1
  117. package/dist/web/components/account/AccountEmailPage.d.ts.map +1 -1
  118. package/dist/web/components/account/AccountEmailPage.js +2 -2
  119. package/dist/web/components/account/AccountEmailPage.js.map +1 -1
  120. package/dist/web/components/account/AccountEnrollmentPage.d.ts +1 -4
  121. package/dist/web/components/account/AccountEnrollmentPage.d.ts.map +1 -1
  122. package/dist/web/components/account/AccountEnrollmentPage.js +270 -236
  123. package/dist/web/components/account/AccountEnrollmentPage.js.map +1 -1
  124. package/dist/web/components/account/AccountEnrollmentUpdatePage.d.ts.map +1 -1
  125. package/dist/web/components/account/AccountEnrollmentUpdatePage.js +2 -1
  126. package/dist/web/components/account/AccountEnrollmentUpdatePage.js.map +1 -1
  127. package/dist/web/components/account/AccountFlowProvider.d.ts +8 -1
  128. package/dist/web/components/account/AccountFlowProvider.d.ts.map +1 -1
  129. package/dist/web/components/account/AccountFlowProvider.js +38 -3
  130. package/dist/web/components/account/AccountFlowProvider.js.map +1 -1
  131. package/dist/web/components/account/AccountInteracConfirmPage.d.ts +4 -3
  132. package/dist/web/components/account/AccountInteracConfirmPage.d.ts.map +1 -1
  133. package/dist/web/components/account/AccountInteracConfirmPage.js +15 -23
  134. package/dist/web/components/account/AccountInteracConfirmPage.js.map +1 -1
  135. package/dist/web/components/account/AccountOtpCodeEntry.d.ts +2 -1
  136. package/dist/web/components/account/AccountOtpCodeEntry.d.ts.map +1 -1
  137. package/dist/web/components/account/AccountOtpCodeEntry.js +25 -6
  138. package/dist/web/components/account/AccountOtpCodeEntry.js.map +1 -1
  139. package/dist/web/components/account/AccountOtpPage.d.ts +1 -1
  140. package/dist/web/components/account/AccountOtpPage.d.ts.map +1 -1
  141. package/dist/web/components/account/AccountOtpPage.js +4 -2
  142. package/dist/web/components/account/AccountOtpPage.js.map +1 -1
  143. package/dist/web/components/account/AccountPaymentPage.d.ts +3 -2
  144. package/dist/web/components/account/AccountPaymentPage.d.ts.map +1 -1
  145. package/dist/web/components/account/AccountPaymentPage.js +10 -5
  146. package/dist/web/components/account/AccountPaymentPage.js.map +1 -1
  147. package/dist/web/components/account/AccountPaymentResumePage.d.ts +8 -0
  148. package/dist/web/components/account/AccountPaymentResumePage.d.ts.map +1 -0
  149. package/dist/web/components/account/AccountPaymentResumePage.js +42 -0
  150. package/dist/web/components/account/AccountPaymentResumePage.js.map +1 -0
  151. package/dist/web/components/account/AccountPhoneOtpPage.d.ts +1 -3
  152. package/dist/web/components/account/AccountPhoneOtpPage.d.ts.map +1 -1
  153. package/dist/web/components/account/AccountPhoneOtpPage.js +3 -40
  154. package/dist/web/components/account/AccountPhoneOtpPage.js.map +1 -1
  155. package/dist/web/components/account/AccountPhonePage.d.ts +1 -2
  156. package/dist/web/components/account/AccountPhonePage.d.ts.map +1 -1
  157. package/dist/web/components/account/AccountPhonePage.js +1 -2
  158. package/dist/web/components/account/AccountPhonePage.js.map +1 -1
  159. package/dist/web/components/account/AccountRequestToPayPage.d.ts +28 -0
  160. package/dist/web/components/account/AccountRequestToPayPage.d.ts.map +1 -0
  161. package/dist/web/components/account/AccountRequestToPayPage.js +79 -0
  162. package/dist/web/components/account/AccountRequestToPayPage.js.map +1 -0
  163. package/dist/web/components/account/AccountStatusPage.d.ts +4 -1
  164. package/dist/web/components/account/AccountStatusPage.d.ts.map +1 -1
  165. package/dist/web/components/account/AccountStatusPage.js +2 -2
  166. package/dist/web/components/account/AccountStatusPage.js.map +1 -1
  167. package/dist/web/components/account/PaginatedEnrollmentForm.d.ts +4 -1
  168. package/dist/web/components/account/PaginatedEnrollmentForm.d.ts.map +1 -1
  169. package/dist/web/components/account/PaginatedEnrollmentForm.js +74 -8
  170. package/dist/web/components/account/PaginatedEnrollmentForm.js.map +1 -1
  171. package/dist/web/components/account/PaginatedEnrollmentForm.test.d.ts +2 -0
  172. package/dist/web/components/account/PaginatedEnrollmentForm.test.d.ts.map +1 -0
  173. package/dist/web/components/account/PaginatedEnrollmentForm.test.js +67 -0
  174. package/dist/web/components/account/PaginatedEnrollmentForm.test.js.map +1 -0
  175. package/dist/web/components/account/accountNav.d.ts +19 -9
  176. package/dist/web/components/account/accountNav.d.ts.map +1 -1
  177. package/dist/web/components/account/accountNav.js +76 -32
  178. package/dist/web/components/account/accountNav.js.map +1 -1
  179. package/dist/web/components/account/accountNav.test.js +180 -15
  180. package/dist/web/components/account/accountNav.test.js.map +1 -1
  181. package/dist/web/components/account/accountPaymentCompatibility.d.ts +40 -0
  182. package/dist/web/components/account/accountPaymentCompatibility.d.ts.map +1 -0
  183. package/dist/web/components/account/accountPaymentCompatibility.js +319 -0
  184. package/dist/web/components/account/accountPaymentCompatibility.js.map +1 -0
  185. package/dist/web/components/account/accountSessionRecreate.d.ts +15 -0
  186. package/dist/web/components/account/accountSessionRecreate.d.ts.map +1 -0
  187. package/dist/web/components/account/accountSessionRecreate.js +24 -0
  188. package/dist/web/components/account/accountSessionRecreate.js.map +1 -0
  189. package/dist/web/components/account/accountSessionRecreate.test.d.ts +2 -0
  190. package/dist/web/components/account/accountSessionRecreate.test.d.ts.map +1 -0
  191. package/dist/web/components/account/accountSessionRecreate.test.js +75 -0
  192. package/dist/web/components/account/accountSessionRecreate.test.js.map +1 -0
  193. package/dist/web/components/account/approvalInteractions.test.d.ts +2 -0
  194. package/dist/web/components/account/approvalInteractions.test.d.ts.map +1 -0
  195. package/dist/web/components/account/approvalInteractions.test.js +209 -0
  196. package/dist/web/components/account/approvalInteractions.test.js.map +1 -0
  197. package/dist/web/components/account/enrollmentProtocol.d.ts +76 -0
  198. package/dist/web/components/account/enrollmentProtocol.d.ts.map +1 -0
  199. package/dist/web/components/account/enrollmentProtocol.js +323 -0
  200. package/dist/web/components/account/enrollmentProtocol.js.map +1 -0
  201. package/dist/web/components/account/enrollmentProtocol.test.d.ts +2 -0
  202. package/dist/web/components/account/enrollmentProtocol.test.d.ts.map +1 -0
  203. package/dist/web/components/account/enrollmentProtocol.test.js +544 -0
  204. package/dist/web/components/account/enrollmentProtocol.test.js.map +1 -0
  205. package/dist/web/components/account/fiatPopup.d.ts +7 -2
  206. package/dist/web/components/account/fiatPopup.d.ts.map +1 -1
  207. package/dist/web/components/account/fiatPopup.js +16 -6
  208. package/dist/web/components/account/fiatPopup.js.map +1 -1
  209. package/dist/web/components/account/fiatPopup.test.js +8 -6
  210. package/dist/web/components/account/fiatPopup.test.js.map +1 -1
  211. package/dist/web/components/account/formSchemas.d.ts +6 -6
  212. package/dist/web/components/account/requestToPay.test.d.ts +2 -0
  213. package/dist/web/components/account/requestToPay.test.d.ts.map +1 -0
  214. package/dist/web/components/account/requestToPay.test.js +117 -0
  215. package/dist/web/components/account/requestToPay.test.js.map +1 -0
  216. package/dist/web/components/account/walletPayDetails.d.ts +8 -0
  217. package/dist/web/components/account/walletPayDetails.d.ts.map +1 -0
  218. package/dist/web/components/account/walletPayDetails.js +46 -0
  219. package/dist/web/components/account/walletPayDetails.js.map +1 -0
  220. package/dist/web/components/account/walletPayDetails.test.d.ts +2 -0
  221. package/dist/web/components/account/walletPayDetails.test.d.ts.map +1 -0
  222. package/dist/web/components/account/walletPayDetails.test.js +87 -0
  223. package/dist/web/components/account/walletPayDetails.test.js.map +1 -0
  224. package/dist/web/components/account/walletPayName.d.ts +8 -0
  225. package/dist/web/components/account/walletPayName.d.ts.map +1 -0
  226. package/dist/web/components/account/walletPayName.js +12 -0
  227. package/dist/web/components/account/walletPayName.js.map +1 -0
  228. package/dist/web/components/account/walletPayName.test.d.ts +2 -0
  229. package/dist/web/components/account/walletPayName.test.d.ts.map +1 -0
  230. package/dist/web/components/account/walletPayName.test.js +15 -0
  231. package/dist/web/components/account/walletPayName.test.js.map +1 -0
  232. package/dist/web/components/frameMessages.d.ts +2 -28
  233. package/dist/web/components/frameMessages.d.ts.map +1 -1
  234. package/dist/web/components/frameMessages.js +4 -61
  235. package/dist/web/components/frameMessages.js.map +1 -1
  236. package/dist/web/components/shared.d.ts.map +1 -1
  237. package/dist/web/components/shared.js +7 -2
  238. package/dist/web/components/shared.js.map +1 -1
  239. package/dist/web/hooks/accountAuthNav.d.ts.map +1 -1
  240. package/dist/web/hooks/accountAuthNav.js +1 -6
  241. package/dist/web/hooks/accountAuthNav.js.map +1 -1
  242. package/dist/web/hooks/accountAuthNav.test.js +9 -15
  243. package/dist/web/hooks/accountAuthNav.test.js.map +1 -1
  244. package/dist/web/hooks/formatUserError.d.ts.map +1 -1
  245. package/dist/web/hooks/formatUserError.js +10 -0
  246. package/dist/web/hooks/formatUserError.js.map +1 -1
  247. package/dist/web/hooks/formatUserError.test.d.ts +2 -0
  248. package/dist/web/hooks/formatUserError.test.d.ts.map +1 -0
  249. package/dist/web/hooks/formatUserError.test.js +36 -0
  250. package/dist/web/hooks/formatUserError.test.js.map +1 -0
  251. package/dist/web/hooks/locales/en.d.ts +8 -2
  252. package/dist/web/hooks/locales/en.d.ts.map +1 -1
  253. package/dist/web/hooks/locales/en.js +13 -7
  254. package/dist/web/hooks/locales/en.js.map +1 -1
  255. package/dist/web/hooks/locales/es.d.ts.map +1 -1
  256. package/dist/web/hooks/locales/es.js +13 -7
  257. package/dist/web/hooks/locales/es.js.map +1 -1
  258. package/dist/web/hooks/locales/ja.d.ts.map +1 -1
  259. package/dist/web/hooks/locales/ja.js +13 -7
  260. package/dist/web/hooks/locales/ja.js.map +1 -1
  261. package/dist/web/hooks/locales/ko.d.ts.map +1 -1
  262. package/dist/web/hooks/locales/ko.js +13 -7
  263. package/dist/web/hooks/locales/ko.js.map +1 -1
  264. package/dist/web/hooks/locales/pt.d.ts.map +1 -1
  265. package/dist/web/hooks/locales/pt.js +13 -7
  266. package/dist/web/hooks/locales/pt.js.map +1 -1
  267. package/dist/web/hooks/locales/zh.d.ts.map +1 -1
  268. package/dist/web/hooks/locales/zh.js +13 -7
  269. package/dist/web/hooks/locales/zh.js.map +1 -1
  270. package/dist/web/hooks/types.d.ts +16 -8
  271. package/dist/web/hooks/types.d.ts.map +1 -1
  272. package/dist/web/hooks/types.js.map +1 -1
  273. package/dist/web/hooks/useAccountFlow.d.ts +3 -9
  274. package/dist/web/hooks/useAccountFlow.d.ts.map +1 -1
  275. package/dist/web/hooks/useAccountFlow.js +0 -12
  276. package/dist/web/hooks/useAccountFlow.js.map +1 -1
  277. package/dist/web/hooks/useDepositPoller.js +1 -1
  278. package/dist/web/hooks/useDepositPoller.js.map +1 -1
  279. package/dist/web/hooks/useDraftDeposit.d.ts +3 -2
  280. package/dist/web/hooks/useDraftDeposit.d.ts.map +1 -1
  281. package/dist/web/hooks/useDraftDeposit.js +12 -5
  282. package/dist/web/hooks/useDraftDeposit.js.map +1 -1
  283. package/dist/web/hooks/useRequestToPayDeposit.d.ts +26 -0
  284. package/dist/web/hooks/useRequestToPayDeposit.d.ts.map +1 -0
  285. package/dist/web/hooks/useRequestToPayDeposit.js +81 -0
  286. package/dist/web/hooks/useRequestToPayDeposit.js.map +1 -0
  287. package/dist/web/hooks/useSessionNav.d.ts +11 -2
  288. package/dist/web/hooks/useSessionNav.d.ts.map +1 -1
  289. package/dist/web/hooks/useSessionNav.js +199 -36
  290. package/dist/web/hooks/useSessionNav.js.map +1 -1
  291. package/dist/web/index.d.ts +2 -0
  292. package/dist/web/index.d.ts.map +1 -1
  293. package/dist/web/index.js +1 -0
  294. package/dist/web/index.js.map +1 -1
  295. package/dist/web/styles.css +1 -1
  296. package/dist/web/theme.css +1 -1
  297. package/dist/web/theme.d.ts.map +1 -1
  298. package/dist/web/theme.js +3 -1
  299. package/dist/web/theme.js.map +1 -1
  300. package/package.json +18 -4
@@ -21,12 +21,14 @@ export function PaginatedEnrollmentForm({ form, onBack, onSubmit, fieldsPerPage
21
21
  const isLastPage = pageIndex === pages.length - 1;
22
22
  const hasMultiplePages = pages.length > 1;
23
23
  const setFieldValue = (key, value) => {
24
- setValues((current) => ({ ...current, [key]: value }));
24
+ setValues((current) => updateFormValuesForChange(form.fields, current, key, value));
25
25
  setFieldErrors((current) => {
26
- if (current[key] == null && current._form == null)
27
- return current;
28
- const { [key]: _removed, _form: _form, ...rest } = current;
29
- return rest;
26
+ const clearedKeys = new Set([
27
+ key,
28
+ ...dependentFieldKeys(form.fields, key),
29
+ "_form",
30
+ ]);
31
+ return Object.fromEntries(Object.entries(current).filter(([errorKey]) => !clearedKeys.has(errorKey)));
30
32
  });
31
33
  };
32
34
  const handleBack = () => {
@@ -66,20 +68,30 @@ export function PaginatedEnrollmentForm({ form, onBack, onSubmit, fieldsPerPage
66
68
  };
67
69
  return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: form.title, onBack: handleBack }), _jsxs("form", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", onSubmit: handleSubmit, children: [_jsx("div", { className: "daimo-flex-1 daimo-min-h-0 daimo-overflow-y-auto daimo-px-6 daimo-pb-4", children: _jsxs("div", { className: "daimo-mx-auto daimo-flex daimo-w-full daimo-max-w-xs daimo-flex-col daimo-gap-4 daimo-pt-2", children: [form.description && pageIndex === 0 && (_jsx("p", { className: "daimo-text-center daimo-text-sm daimo-leading-relaxed daimo-text-[var(--daimo-text-secondary)]", children: form.description })), hasMultiplePages && (_jsxs("div", { className: "daimo-flex daimo-items-center daimo-justify-center daimo-gap-2", children: [pages.map((page, index) => (_jsx("span", { className: `daimo-h-1.5 daimo-rounded-full daimo-transition-[width,background-color] daimo-duration-150 daimo-ease-out ${index === pageIndex
68
70
  ? "daimo-w-5 daimo-bg-[var(--daimo-text)]"
69
- : "daimo-w-1.5 daimo-bg-[var(--daimo-border)]"}`, "aria-hidden": "true" }, page[0]?.key ?? index))), _jsx("span", { className: "daimo-sr-only", children: t.accountDirectionsStep(pageIndex + 1, pages.length) })] })), _jsx("div", { className: "daimo-flex daimo-flex-col daimo-gap-3", children: visibleFields.map((field) => (_jsx(EnrollmentFormFieldControl, { field: field, value: values[field.key], error: fieldErrors[field.key], onChange: (value) => setFieldValue(field.key, value) }, field.key))) }), fieldErrors._form && (_jsx("p", { className: "daimo-text-center daimo-text-sm daimo-leading-relaxed daimo-text-[var(--daimo-error)]", children: fieldErrors._form }))] }) }), _jsx("div", { className: "daimo-px-6 daimo-pb-6 daimo-flex daimo-flex-col daimo-items-center", children: _jsx(PrimaryButton, { type: "submit", disabled: isSubmitting, children: isLastPage ? form.submitLabel : t.continue }) })] })] }));
71
+ : "daimo-w-1.5 daimo-bg-[var(--daimo-border)]"}`, "aria-hidden": "true" }, page[0]?.key ?? index))), _jsx("span", { className: "daimo-sr-only", children: t.accountDirectionsStep(pageIndex + 1, pages.length) })] })), _jsx("div", { className: "daimo-flex daimo-flex-col daimo-gap-3", children: visibleFields.map((field) => (_jsx(EnrollmentFormFieldControl, { field: field, value: values[field.key], values: values, error: fieldErrors[field.key], onChange: (value) => setFieldValue(field.key, value) }, field.key))) }), fieldErrors._form && (_jsx("p", { className: "daimo-text-center daimo-text-sm daimo-leading-relaxed daimo-text-[var(--daimo-error)]", children: fieldErrors._form }))] }) }), _jsx("div", { className: "daimo-px-6 daimo-pb-6 daimo-flex daimo-flex-col daimo-items-center", children: _jsx(PrimaryButton, { type: "submit", disabled: isSubmitting, children: isLastPage ? form.submitLabel : t.continue }) })] })] }));
70
72
  }
71
- function EnrollmentFormFieldControl({ field, value, error, onChange, }) {
73
+ function EnrollmentFormFieldControl({ field, value, values, error, onChange, }) {
72
74
  switch (field.type) {
73
75
  case "text":
74
76
  return (_jsx(DaimoFormField, { label: field.label, description: field.description, error: error, children: ({ id, describedBy, invalid }) => (_jsx(DaimoTextField, { id: id, type: "text", inputMode: field.inputMode, autoComplete: field.autoComplete, maxLength: formattedMaxLength(field), value: formatTextFieldValue(field, value), placeholder: field.placeholder, "aria-describedby": describedBy, invalid: invalid, onChange: (event) => onChange(parseTextFieldValue(field, event.target.value)), className: "daimo-px-4 daimo-py-3" })) }));
75
77
  case "select":
76
78
  return (_jsx(DaimoFormField, { label: field.label, description: field.description, error: error, children: ({ id, describedBy, invalid }) => (_jsxs("select", { id: id, value: typeof value === "string" ? value : "", "aria-describedby": describedBy, "aria-invalid": invalid || undefined, onChange: (event) => onChange(event.target.value), className: `${baseSelectClass} ${invalid ? "daimo-ring-1 daimo-ring-[var(--daimo-error)]" : ""}`, children: [_jsx("option", { value: "", disabled: true, children: field.placeholder ?? field.label }), field.options.map((option) => (_jsx("option", { value: option.value, children: option.label }, option.value)))] })) }));
79
+ case "dependent-select": {
80
+ const dependency = values[field.dependsOn];
81
+ const options = typeof dependency === "string"
82
+ ? (field.optionsByValue[dependency] ?? [])
83
+ : [];
84
+ return (_jsx(DaimoFormField, { label: field.label, description: field.description, error: error, children: ({ id, describedBy, invalid }) => (_jsxs("select", { id: id, value: typeof value === "string" ? value : "", disabled: options.length === 0, "aria-describedby": describedBy, "aria-invalid": invalid || undefined, onChange: (event) => onChange(event.target.value), className: `${baseSelectClass} disabled:daimo-opacity-60 ${invalid ? "daimo-ring-1 daimo-ring-[var(--daimo-error)]" : ""}`, children: [_jsx("option", { value: "", disabled: true, children: field.placeholder ?? field.label }), options.map((option) => (_jsx("option", { value: option.value, children: option.label }, option.value)))] })) }));
85
+ }
77
86
  case "date":
78
87
  return (_jsx(DaimoFormField, { label: field.label, description: field.description, error: error, children: ({ id, describedBy, invalid }) => (_jsx(DaimoTextField, { id: id, type: "date", value: typeof value === "string" ? value : "", "aria-describedby": describedBy, invalid: invalid, onChange: (event) => onChange(event.target.value), className: "daimo-px-4 daimo-py-3" })) }));
79
88
  case "boolean":
80
89
  if (field.control === "yes_no") {
81
90
  return (_jsx(DaimoFormField, { as: "div", label: field.label, description: field.description, error: error, children: ({ id, describedBy, invalid }) => (_jsx("div", { id: id, role: "radiogroup", "aria-label": field.label, "aria-describedby": describedBy, "aria-invalid": invalid || undefined, className: `daimo-grid daimo-grid-cols-2 daimo-gap-2 ${invalid ? "daimo-rounded-[var(--daimo-radius-md)] daimo-ring-1 daimo-ring-[var(--daimo-error)]" : ""}`, children: [
82
- { value: true, label: field.trueLabel ?? t.accountBooleanYes },
91
+ {
92
+ value: true,
93
+ label: field.trueLabel ?? t.accountBooleanYes,
94
+ },
83
95
  {
84
96
  value: false,
85
97
  label: field.falseLabel ?? t.accountBooleanNo,
@@ -106,6 +118,60 @@ function initialFieldValue(field) {
106
118
  return false;
107
119
  return field.required ? "" : false;
108
120
  }
121
+ export function updateFormValuesForChange(fields, current, key, value) {
122
+ const next = { ...current, [key]: value };
123
+ const pendingKeys = [key];
124
+ const expandedKeys = new Set([key]);
125
+ while (pendingKeys.length > 0) {
126
+ const changedKey = pendingKeys.shift();
127
+ if (changedKey == null)
128
+ break;
129
+ for (const field of fields) {
130
+ if (field.type !== "dependent-select" || field.dependsOn !== changedKey) {
131
+ continue;
132
+ }
133
+ const dependency = next[changedKey];
134
+ const options = typeof dependency === "string"
135
+ ? (field.optionsByValue[dependency] ?? [])
136
+ : [];
137
+ const selected = next[field.key];
138
+ const selectionIsValid = typeof selected === "string" &&
139
+ options.some((option) => option.value === selected);
140
+ const shouldExpand = !expandedKeys.has(field.key);
141
+ if (!selectionIsValid && selected !== "") {
142
+ next[field.key] = "";
143
+ pendingKeys.push(field.key);
144
+ }
145
+ else if (shouldExpand) {
146
+ pendingKeys.push(field.key);
147
+ }
148
+ expandedKeys.add(field.key);
149
+ }
150
+ }
151
+ return next;
152
+ }
153
+ /** Returns all transitive dependent fields, tolerating malformed cycles. */
154
+ export function dependentFieldKeys(fields, key) {
155
+ const dependentKeys = [];
156
+ const pendingKeys = [key];
157
+ const seenKeys = new Set([key]);
158
+ while (pendingKeys.length > 0) {
159
+ const parentKey = pendingKeys.shift();
160
+ if (parentKey == null)
161
+ break;
162
+ for (const field of fields) {
163
+ if (field.type !== "dependent-select" ||
164
+ field.dependsOn !== parentKey ||
165
+ seenKeys.has(field.key)) {
166
+ continue;
167
+ }
168
+ seenKeys.add(field.key);
169
+ dependentKeys.push(field.key);
170
+ pendingKeys.push(field.key);
171
+ }
172
+ }
173
+ return dependentKeys;
174
+ }
109
175
  function validateFields(fields, values) {
110
176
  const errors = {};
111
177
  for (const field of fields) {
@@ -1 +1 @@
1
- {"version":3,"file":"PaginatedEnrollmentForm.js","sourceRoot":"","sources":["../../../../src/web/components/account/PaginatedEnrollmentForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PaginatedEnrollmentForm.js","sourceRoot":"","sources":["../../../../src/web/components/account/PaginatedEnrollmentForm.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PaginatedEnrollmentForm.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaginatedEnrollmentForm.test.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/PaginatedEnrollmentForm.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,67 @@
1
+ import { describe, expect, test } from "vitest";
2
+ import { dependentFieldKeys, updateFormValuesForChange, } from "./PaginatedEnrollmentForm.js";
3
+ const fields = [
4
+ {
5
+ key: "department",
6
+ type: "select",
7
+ label: "Department",
8
+ required: true,
9
+ options: [
10
+ { value: "CO.DC", label: "Bogotá" },
11
+ { value: "CO.AN", label: "Antioquia" },
12
+ ],
13
+ },
14
+ {
15
+ key: "municipality",
16
+ type: "dependent-select",
17
+ label: "Municipality",
18
+ required: true,
19
+ dependsOn: "department",
20
+ optionsByValue: {
21
+ "CO.DC": [{ value: "11001", label: "11001" }],
22
+ "CO.AN": [{ value: "5001", label: "5001" }],
23
+ },
24
+ },
25
+ {
26
+ key: "neighborhood",
27
+ type: "dependent-select",
28
+ label: "Neighborhood",
29
+ required: true,
30
+ dependsOn: "municipality",
31
+ optionsByValue: {
32
+ "11001": [{ value: "chapinero", label: "Chapinero" }],
33
+ "5001": [{ value: "poblado", label: "El Poblado" }],
34
+ },
35
+ },
36
+ ];
37
+ describe("dependent enrollment form selects", () => {
38
+ test("clears a child selection when its parent changes", () => {
39
+ expect(updateFormValuesForChange(fields, {
40
+ department: "CO.DC",
41
+ municipality: "11001",
42
+ neighborhood: "chapinero",
43
+ }, "department", "CO.AN")).toEqual({
44
+ department: "CO.AN",
45
+ municipality: "",
46
+ neighborhood: "",
47
+ });
48
+ });
49
+ test("preserves a child selection when it remains valid", () => {
50
+ expect(updateFormValuesForChange(fields, {
51
+ department: "CO.DC",
52
+ municipality: "11001",
53
+ neighborhood: "chapinero",
54
+ }, "department", "CO.DC")).toEqual({
55
+ department: "CO.DC",
56
+ municipality: "11001",
57
+ neighborhood: "chapinero",
58
+ });
59
+ });
60
+ test("finds transitive fields whose errors must be cleared", () => {
61
+ expect(dependentFieldKeys(fields, "department")).toEqual([
62
+ "municipality",
63
+ "neighborhood",
64
+ ]);
65
+ });
66
+ });
67
+ //# sourceMappingURL=PaginatedEnrollmentForm.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaginatedEnrollmentForm.test.js","sourceRoot":"","sources":["../../../../src/web/components/account/PaginatedEnrollmentForm.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEhD,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,GAA0B;IACpC;QACE,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE;YACnC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;SACvC;KACF;IACD;QACE,GAAG,EAAE,cAAc;QACnB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,cAAc;QACrB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,YAAY;QACvB,cAAc,EAAE;YACd,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;SAC5C;KACF;IACD;QACE,GAAG,EAAE,cAAc;QACnB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,cAAc;QACrB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,cAAc;QACzB,cAAc,EAAE;YACd,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;SACpD;KACF;CACF,CAAC;AAEF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC5D,MAAM,CACJ,yBAAyB,CACvB,MAAM,EACN;YACE,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,WAAW;SAC1B,EACD,YAAY,EACZ,OAAO,CACR,CACF,CAAC,OAAO,CAAC;YACR,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,EAAE;SACjB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC7D,MAAM,CACJ,yBAAyB,CACvB,MAAM,EACN;YACE,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,WAAW;SAC1B,EACD,YAAY,EACZ,OAAO,CACR,CACF,CAAC,OAAO,CAAC;YACR,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,WAAW;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAChE,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;YACvD,cAAc;YACd,cAAc;SACf,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,15 +1,25 @@
1
- import type { AccountRail } from "../../../common/account.js";
1
+ import type { AccountDepositStatus, DepositPaymentInfo, DepositPaymentInteraction } from "../../../common/account.js";
2
2
  import { type DaimoPlatform } from "../../platform.js";
3
3
  /**
4
- * Pick the modal entry page for a rail. Each rail has its own payment UX:
5
- * - interac: two-step amount entry bank picker (desktop) or deeplink (mobile)
6
- * - ach/sepa/jpyc/ars: two-step amount entry transfer details
7
- * - apple_pay: single unified amount+Apple Pay page (Coinbase Headless)
4
+ * Pick the modal page to resume at for a session with an existing deposit.
5
+ * Once payment is past the provider (or terminal), the status page owns the
6
+ * UX; earlier states re-enter the normal payment flow.
8
7
  */
9
- export declare function getAccountPaymentEntryTarget(rail: AccountRail): "account-payment" | "account-apple-pay";
8
+ export declare function getDepositResumeTarget(status: AccountDepositStatus, interaction?: DepositPaymentInteraction): "account-status" | null;
9
+ /** Expired interactive requests recover on their own semantic surface. */
10
+ export declare function shouldRecoverExpiredPayment(status: AccountDepositStatus, interaction: DepositPaymentInteraction): boolean;
10
11
  /**
11
- * Pick the modal page that follows the deposit amount screen (for rails
12
- * that use the two-step flow).
12
+ * Pick the modal entry page from the server-advertised interaction.
13
+ * Wallet pay keeps its combined amount+widget screen; every other interaction
14
+ * starts with generic amount entry.
13
15
  */
14
- export declare function getAccountPaymentAdvanceTarget(rail: AccountRail, platform: DaimoPlatform): "account-canada-bank-picker" | "account-interac-confirm" | "account-bank-details" | "account-apple-pay";
16
+ export declare function getAccountPaymentEntryTarget(interaction: DepositPaymentInteraction): "account-amount" | "account-wallet-pay";
17
+ /**
18
+ * Pick the modal renderer for an interaction after amount entry.
19
+ */
20
+ export declare function getAccountPaymentAdvanceTarget(interaction: DepositPaymentInteraction, platform: DaimoPlatform): "account-approval" | "account-request-to-pay" | "account-institution-picker" | "account-institution-review" | "account-payment-instructions" | "account-wallet-pay";
21
+ /** Advance after institution selection without re-entering the legacy picker. */
22
+ export declare function getInstitutionSelectionAdvanceTarget(paymentFlow: DepositPaymentInteraction, platform: DaimoPlatform): "account-approval" | "account-request-to-pay" | "account-institution-picker" | "account-institution-review" | "account-payment-instructions" | "account-wallet-pay";
23
+ /** Fail closed when server-advertised intent and actual instructions diverge. */
24
+ export declare function isPaymentInteractionCompatible(interaction: DepositPaymentInteraction, payment: DepositPaymentInfo): boolean;
15
25
  //# sourceMappingURL=accountNav.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountNav.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/accountNav.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,WAAW,2CAa7D;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,aAAa,2GAkBxB"}
1
+ {"version":3,"file":"accountNav.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/accountNav.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,CAAC,EAAE,yBAAyB,GACtC,gBAAgB,GAAG,IAAI,CAgBzB;AAED,0EAA0E;AAC1E,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,yBAAyB,GACrC,OAAO,CAQT;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,yBAAyB,2CAcvC;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,yBAAyB,EACtC,QAAQ,EAAE,aAAa,uKAsBxB;AAED,iFAAiF;AACjF,wBAAgB,oCAAoC,CAClD,WAAW,EAAE,yBAAyB,EACtC,QAAQ,EAAE,aAAa,uKAMxB;AAED,iFAAiF;AACjF,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAET"}
@@ -1,44 +1,88 @@
1
1
  import { isDesktop } from "../../platform.js";
2
2
  /**
3
- * Pick the modal entry page for a rail. Each rail has its own payment UX:
4
- * - interac: two-step amount entry bank picker (desktop) or deeplink (mobile)
5
- * - ach/sepa/jpyc/ars: two-step amount entry transfer details
6
- * - apple_pay: single unified amount+Apple Pay page (Coinbase Headless)
3
+ * Pick the modal page to resume at for a session with an existing deposit.
4
+ * Once payment is past the provider (or terminal), the status page owns the
5
+ * UX; earlier states re-enter the normal payment flow.
7
6
  */
8
- export function getAccountPaymentEntryTarget(rail) {
9
- switch (rail) {
10
- case "apple_pay":
11
- // Coinbase Headless: amount input + Apple Pay live in the same page.
12
- return "account-apple-pay";
13
- case "interac":
14
- case "ach":
15
- case "sepa":
16
- case "jpyc":
17
- case "ars":
18
- // Old two-step flow: amount first, then picker/details.
19
- return "account-payment";
7
+ export function getDepositResumeTarget(status, interaction) {
8
+ switch (status) {
9
+ case "payment_received":
10
+ case "token_delivered":
11
+ case "completed":
12
+ case "failed":
13
+ return "account-status";
14
+ case "expired":
15
+ return interaction != null &&
16
+ shouldRecoverExpiredPayment(status, interaction)
17
+ ? null
18
+ : "account-status";
19
+ case "initiated":
20
+ case "awaiting_payment":
21
+ return null;
22
+ }
23
+ }
24
+ /** Expired interactive requests recover on their own semantic surface. */
25
+ export function shouldRecoverExpiredPayment(status, interaction) {
26
+ if (status !== "expired")
27
+ return false;
28
+ return (interaction === "request-to-pay" ||
29
+ interaction === "institution-picker" ||
30
+ interaction === "hosted-approval" ||
31
+ interaction === "external-app-approval");
32
+ }
33
+ /**
34
+ * Pick the modal entry page from the server-advertised interaction.
35
+ * Wallet pay keeps its combined amount+widget screen; every other interaction
36
+ * starts with generic amount entry.
37
+ */
38
+ export function getAccountPaymentEntryTarget(interaction) {
39
+ switch (interaction) {
40
+ case "wallet-pay-widget":
41
+ return "account-wallet-pay";
42
+ case "bank-picker":
43
+ case "bank-transfer":
44
+ case "directions":
45
+ case "external-app-approval":
46
+ case "hosted-approval":
47
+ case "institution-picker":
48
+ case "request-to-pay":
49
+ return "account-amount";
20
50
  }
21
51
  }
22
52
  /**
23
- * Pick the modal page that follows the deposit amount screen (for rails
24
- * that use the two-step flow).
53
+ * Pick the modal renderer for an interaction after amount entry.
25
54
  */
26
- export function getAccountPaymentAdvanceTarget(rail, platform) {
27
- switch (rail) {
28
- case "interac":
55
+ export function getAccountPaymentAdvanceTarget(interaction, platform) {
56
+ switch (interaction) {
57
+ case "institution-picker":
58
+ return "account-institution-picker";
59
+ case "bank-picker":
29
60
  // JS-driven bank deeplinks (form-post popups, window.open) are
30
- // unreliable on mobile — skip the picker, then review before Interac.
61
+ // unreliable on mobile — skip the picker, then review before opening.
31
62
  return isDesktop(platform)
32
- ? "account-canada-bank-picker"
33
- : "account-interac-confirm";
34
- case "ach":
35
- case "sepa":
36
- case "jpyc":
37
- case "ars":
38
- return "account-bank-details";
39
- case "apple_pay":
40
- // Never used — apple_pay skips account-payment entirely.
41
- return "account-apple-pay";
63
+ ? "account-institution-picker"
64
+ : "account-institution-review";
65
+ case "bank-transfer":
66
+ case "directions":
67
+ return "account-payment-instructions";
68
+ case "request-to-pay":
69
+ return "account-request-to-pay";
70
+ case "hosted-approval":
71
+ case "external-app-approval":
72
+ return "account-approval";
73
+ case "wallet-pay-widget":
74
+ return "account-wallet-pay";
75
+ }
76
+ }
77
+ /** Advance after institution selection without re-entering the legacy picker. */
78
+ export function getInstitutionSelectionAdvanceTarget(paymentFlow, platform) {
79
+ if (paymentFlow === "bank-picker") {
80
+ return "account-institution-review";
42
81
  }
82
+ return getAccountPaymentAdvanceTarget(paymentFlow, platform);
83
+ }
84
+ /** Fail closed when server-advertised intent and actual instructions diverge. */
85
+ export function isPaymentInteractionCompatible(interaction, payment) {
86
+ return interaction === payment.flow;
43
87
  }
44
88
  //# sourceMappingURL=accountNav.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountNav.js","sourceRoot":"","sources":["../../../../src/web/components/account/accountNav.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAsB,MAAM,mBAAmB,CAAC;AAElE;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAiB;IAC5D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,WAAW;YACd,qEAAqE;YACrE,OAAO,mBAA4B,CAAC;QACtC,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,wDAAwD;YACxD,OAAO,iBAA0B,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,8BAA8B,CAC5C,IAAiB,EACjB,QAAuB;IAEvB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,+DAA+D;YAC/D,sEAAsE;YACtE,OAAO,SAAS,CAAC,QAAQ,CAAC;gBACxB,CAAC,CAAE,4BAAsC;gBACzC,CAAC,CAAE,yBAAmC,CAAC;QAC3C,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,sBAA+B,CAAC;QACzC,KAAK,WAAW;YACd,yDAAyD;YACzD,OAAO,mBAA4B,CAAC;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"accountNav.js","sourceRoot":"","sources":["../../../../src/web/components/account/accountNav.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAsB,MAAM,mBAAmB,CAAC;AAElE;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAA4B,EAC5B,WAAuC;IAEvC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,kBAAkB,CAAC;QACxB,KAAK,iBAAiB,CAAC;QACvB,KAAK,WAAW,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,gBAAgB,CAAC;QAC1B,KAAK,SAAS;YACZ,OAAO,WAAW,IAAI,IAAI;gBACxB,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC;gBAChD,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,gBAAgB,CAAC;QACvB,KAAK,WAAW,CAAC;QACjB,KAAK,kBAAkB;YACrB,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,2BAA2B,CACzC,MAA4B,EAC5B,WAAsC;IAEtC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvC,OAAO,CACL,WAAW,KAAK,gBAAgB;QAChC,WAAW,KAAK,oBAAoB;QACpC,WAAW,KAAK,iBAAiB;QACjC,WAAW,KAAK,uBAAuB,CACxC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,WAAsC;IAEtC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,mBAAmB;YACtB,OAAO,oBAA6B,CAAC;QACvC,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY,CAAC;QAClB,KAAK,uBAAuB,CAAC;QAC7B,KAAK,iBAAiB,CAAC;QACvB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,gBAAgB;YACnB,OAAO,gBAAyB,CAAC;IACrC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAC5C,WAAsC,EACtC,QAAuB;IAEvB,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,oBAAoB;YACvB,OAAO,4BAAqC,CAAC;QAC/C,KAAK,aAAa;YAChB,+DAA+D;YAC/D,sEAAsE;YACtE,OAAO,SAAS,CAAC,QAAQ,CAAC;gBACxB,CAAC,CAAE,4BAAsC;gBACzC,CAAC,CAAE,4BAAsC,CAAC;QAC9C,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY;YACf,OAAO,8BAAuC,CAAC;QACjD,KAAK,gBAAgB;YACnB,OAAO,wBAAiC,CAAC;QAC3C,KAAK,iBAAiB,CAAC;QACvB,KAAK,uBAAuB;YAC1B,OAAO,kBAA2B,CAAC;QACrC,KAAK,mBAAmB;YACtB,OAAO,oBAA6B,CAAC;IACzC,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,oCAAoC,CAClD,WAAsC,EACtC,QAAuB;IAEvB,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;QAClC,OAAO,4BAAqC,CAAC;IAC/C,CAAC;IACD,OAAO,8BAA8B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,8BAA8B,CAC5C,WAAsC,EACtC,OAA2B;IAE3B,OAAO,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC;AACtC,CAAC"}