@spare-technologies/spare-link 0.1.0-beta.1 → 1.0.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 (568) hide show
  1. package/README.md +119 -63
  2. package/lib/commonjs/core/models/payment-return-params.js +245 -20
  3. package/lib/commonjs/core/models/payment-return-params.js.map +1 -1
  4. package/lib/commonjs/core/models/pending-session-record.js +2 -0
  5. package/lib/commonjs/core/models/pending-session-record.js.map +1 -0
  6. package/lib/commonjs/core/services/hosted-flow-controller.js +333 -0
  7. package/lib/commonjs/core/services/hosted-flow-controller.js.map +1 -0
  8. package/lib/commonjs/core/services/hosted-flow-state.js +96 -0
  9. package/lib/commonjs/core/services/hosted-flow-state.js.map +1 -0
  10. package/lib/commonjs/index.js +42 -164
  11. package/lib/commonjs/index.js.map +1 -1
  12. package/lib/commonjs/internal/bank-redirect.js +20 -9
  13. package/lib/commonjs/internal/bank-redirect.js.map +1 -1
  14. package/lib/commonjs/internal/hosted/bridge-message.js +107 -0
  15. package/lib/commonjs/internal/hosted/bridge-message.js.map +1 -0
  16. package/lib/commonjs/internal/hosted/hosted-url.js +41 -0
  17. package/lib/commonjs/internal/hosted/hosted-url.js.map +1 -0
  18. package/lib/commonjs/internal/index.js +0 -7
  19. package/lib/commonjs/internal/index.js.map +1 -1
  20. package/lib/commonjs/internal/redact-uri.js +59 -15
  21. package/lib/commonjs/internal/redact-uri.js.map +1 -1
  22. package/lib/commonjs/internal/secure-store-pending-session-store.js +20 -25
  23. package/lib/commonjs/internal/secure-store-pending-session-store.js.map +1 -1
  24. package/lib/commonjs/internal/url-parts.js +145 -0
  25. package/lib/commonjs/internal/url-parts.js.map +1 -0
  26. package/lib/commonjs/public/index.js +0 -37
  27. package/lib/commonjs/public/index.js.map +1 -1
  28. package/lib/commonjs/public/payment-result.js +16 -4
  29. package/lib/commonjs/public/payment-result.js.map +1 -1
  30. package/lib/commonjs/public/recovery-result.js +7 -18
  31. package/lib/commonjs/public/recovery-result.js.map +1 -1
  32. package/lib/commonjs/public/spare-link-config.js +41 -16
  33. package/lib/commonjs/public/spare-link-config.js.map +1 -1
  34. package/lib/commonjs/public/spare-link-event.js +27 -33
  35. package/lib/commonjs/public/spare-link-event.js.map +1 -1
  36. package/lib/commonjs/public/spare-link-instance.js +67 -77
  37. package/lib/commonjs/public/spare-link-instance.js.map +1 -1
  38. package/lib/commonjs/public/spare-link-session.js +2 -9
  39. package/lib/commonjs/public/spare-link-session.js.map +1 -1
  40. package/lib/commonjs/public/spare-link.js +0 -12
  41. package/lib/commonjs/public/spare-link.js.map +1 -1
  42. package/lib/commonjs/ui/hooks/{use-payment-flow-state.js → use-hosted-flow-state.js} +4 -4
  43. package/lib/commonjs/ui/hooks/use-hosted-flow-state.js.map +1 -0
  44. package/lib/commonjs/ui/hosted/hosted-payment-page.js +177 -0
  45. package/lib/commonjs/ui/hosted/hosted-payment-page.js.map +1 -0
  46. package/lib/commonjs/ui/hosted/hosted-payment-webview.js +168 -0
  47. package/lib/commonjs/ui/hosted/hosted-payment-webview.js.map +1 -0
  48. package/lib/commonjs/ui/screens/index.js +3 -17
  49. package/lib/commonjs/ui/screens/index.js.map +1 -1
  50. package/lib/commonjs/ui/screens/page-unavailable-screen.js +101 -0
  51. package/lib/commonjs/ui/screens/page-unavailable-screen.js.map +1 -0
  52. package/lib/commonjs/ui/spare-link-host.js +220 -234
  53. package/lib/commonjs/ui/spare-link-host.js.map +1 -1
  54. package/lib/commonjs/ui/widgets/index.js +3 -10
  55. package/lib/commonjs/ui/widgets/index.js.map +1 -1
  56. package/lib/commonjs/version.js +1 -1
  57. package/lib/commonjs/version.js.map +1 -1
  58. package/lib/module/core/models/payment-return-params.js +235 -20
  59. package/lib/module/core/models/payment-return-params.js.map +1 -1
  60. package/lib/module/core/models/pending-session-record.js +2 -0
  61. package/lib/module/core/models/pending-session-record.js.map +1 -0
  62. package/lib/module/core/services/hosted-flow-controller.js +328 -0
  63. package/lib/module/core/services/hosted-flow-controller.js.map +1 -0
  64. package/lib/module/core/services/hosted-flow-state.js +91 -0
  65. package/lib/module/core/services/hosted-flow-state.js.map +1 -0
  66. package/lib/module/index.js +8 -22
  67. package/lib/module/index.js.map +1 -1
  68. package/lib/module/internal/bank-redirect.js +20 -9
  69. package/lib/module/internal/bank-redirect.js.map +1 -1
  70. package/lib/module/internal/hosted/bridge-message.js +104 -0
  71. package/lib/module/internal/hosted/bridge-message.js.map +1 -0
  72. package/lib/module/internal/hosted/hosted-url.js +36 -0
  73. package/lib/module/internal/hosted/hosted-url.js.map +1 -0
  74. package/lib/module/internal/index.js +0 -1
  75. package/lib/module/internal/index.js.map +1 -1
  76. package/lib/module/internal/redact-uri.js +59 -15
  77. package/lib/module/internal/redact-uri.js.map +1 -1
  78. package/lib/module/internal/secure-store-pending-session-store.js +20 -25
  79. package/lib/module/internal/secure-store-pending-session-store.js.map +1 -1
  80. package/lib/module/internal/url-parts.js +139 -0
  81. package/lib/module/internal/url-parts.js.map +1 -0
  82. package/lib/module/public/index.js +2 -3
  83. package/lib/module/public/index.js.map +1 -1
  84. package/lib/module/public/payment-result.js +16 -4
  85. package/lib/module/public/payment-result.js.map +1 -1
  86. package/lib/module/public/recovery-result.js +7 -17
  87. package/lib/module/public/recovery-result.js.map +1 -1
  88. package/lib/module/public/spare-link-config.js +42 -15
  89. package/lib/module/public/spare-link-config.js.map +1 -1
  90. package/lib/module/public/spare-link-event.js +27 -33
  91. package/lib/module/public/spare-link-event.js.map +1 -1
  92. package/lib/module/public/spare-link-instance.js +68 -72
  93. package/lib/module/public/spare-link-instance.js.map +1 -1
  94. package/lib/module/public/spare-link-session.js +2 -9
  95. package/lib/module/public/spare-link-session.js.map +1 -1
  96. package/lib/module/public/spare-link.js +1 -1
  97. package/lib/module/public/spare-link.js.map +1 -1
  98. package/lib/module/ui/hooks/{use-payment-flow-state.js → use-hosted-flow-state.js} +3 -3
  99. package/lib/module/ui/hooks/use-hosted-flow-state.js.map +1 -0
  100. package/lib/module/ui/hosted/hosted-payment-page.js +175 -0
  101. package/lib/module/ui/hosted/hosted-payment-page.js.map +1 -0
  102. package/lib/module/ui/hosted/hosted-payment-webview.js +163 -0
  103. package/lib/module/ui/hosted/hosted-payment-webview.js.map +1 -0
  104. package/lib/module/ui/screens/index.js +1 -3
  105. package/lib/module/ui/screens/index.js.map +1 -1
  106. package/lib/module/ui/screens/page-unavailable-screen.js +97 -0
  107. package/lib/module/ui/screens/page-unavailable-screen.js.map +1 -0
  108. package/lib/module/ui/spare-link-host.js +221 -236
  109. package/lib/module/ui/spare-link-host.js.map +1 -1
  110. package/lib/module/ui/widgets/index.js +1 -2
  111. package/lib/module/ui/widgets/index.js.map +1 -1
  112. package/lib/module/version.js +1 -1
  113. package/lib/module/version.js.map +1 -1
  114. package/lib/typescript/commonjs/core/models/index.d.ts +1 -123
  115. package/lib/typescript/commonjs/core/models/index.d.ts.map +1 -1
  116. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts +91 -8
  117. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts.map +1 -1
  118. package/lib/typescript/commonjs/core/models/pending-session-record.d.ts +11 -0
  119. package/lib/typescript/commonjs/core/models/pending-session-record.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/core/services/hosted-flow-controller.d.ts +119 -0
  121. package/lib/typescript/commonjs/core/services/hosted-flow-controller.d.ts.map +1 -0
  122. package/lib/typescript/commonjs/core/services/hosted-flow-state.d.ts +75 -0
  123. package/lib/typescript/commonjs/core/services/hosted-flow-state.d.ts.map +1 -0
  124. package/lib/typescript/commonjs/index.d.ts +5 -14
  125. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  126. package/lib/typescript/commonjs/internal/bank-redirect.d.ts.map +1 -1
  127. package/lib/typescript/commonjs/internal/hosted/bridge-message.d.ts +44 -0
  128. package/lib/typescript/commonjs/internal/hosted/bridge-message.d.ts.map +1 -0
  129. package/lib/typescript/commonjs/internal/hosted/hosted-url.d.ts +30 -0
  130. package/lib/typescript/commonjs/internal/hosted/hosted-url.d.ts.map +1 -0
  131. package/lib/typescript/commonjs/internal/index.d.ts +0 -1
  132. package/lib/typescript/commonjs/internal/index.d.ts.map +1 -1
  133. package/lib/typescript/commonjs/internal/redact-uri.d.ts +21 -1
  134. package/lib/typescript/commonjs/internal/redact-uri.d.ts.map +1 -1
  135. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts +3 -2
  136. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts.map +1 -1
  137. package/lib/typescript/commonjs/internal/url-parts.d.ts +46 -0
  138. package/lib/typescript/commonjs/internal/url-parts.d.ts.map +1 -0
  139. package/lib/typescript/commonjs/public/index.d.ts +4 -6
  140. package/lib/typescript/commonjs/public/index.d.ts.map +1 -1
  141. package/lib/typescript/commonjs/public/payment-result.d.ts +50 -12
  142. package/lib/typescript/commonjs/public/payment-result.d.ts.map +1 -1
  143. package/lib/typescript/commonjs/public/recovery-result.d.ts +11 -20
  144. package/lib/typescript/commonjs/public/recovery-result.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/public/spare-link-config.d.ts +13 -31
  146. package/lib/typescript/commonjs/public/spare-link-config.d.ts.map +1 -1
  147. package/lib/typescript/commonjs/public/spare-link-event.d.ts +29 -31
  148. package/lib/typescript/commonjs/public/spare-link-event.d.ts.map +1 -1
  149. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts +1 -12
  150. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts.map +1 -1
  151. package/lib/typescript/commonjs/public/spare-link-instance.d.ts +26 -20
  152. package/lib/typescript/commonjs/public/spare-link-instance.d.ts.map +1 -1
  153. package/lib/typescript/commonjs/public/spare-link-session.d.ts +3 -8
  154. package/lib/typescript/commonjs/public/spare-link-session.d.ts.map +1 -1
  155. package/lib/typescript/commonjs/public/spare-link.d.ts +1 -1
  156. package/lib/typescript/commonjs/public/spare-link.d.ts.map +1 -1
  157. package/lib/typescript/commonjs/ui/hooks/use-hosted-flow-state.d.ts +9 -0
  158. package/lib/typescript/commonjs/ui/hooks/use-hosted-flow-state.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/ui/hosted/hosted-payment-page.d.ts +17 -0
  160. package/lib/typescript/commonjs/ui/hosted/hosted-payment-page.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/ui/hosted/hosted-payment-webview.d.ts +43 -0
  162. package/lib/typescript/commonjs/ui/hosted/hosted-payment-webview.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/ui/screens/index.d.ts +1 -3
  164. package/lib/typescript/commonjs/ui/screens/index.d.ts.map +1 -1
  165. package/lib/typescript/commonjs/ui/screens/page-unavailable-screen.d.ts +18 -0
  166. package/lib/typescript/commonjs/ui/screens/page-unavailable-screen.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/ui/spare-link-host.d.ts +4 -5
  168. package/lib/typescript/commonjs/ui/spare-link-host.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/ui/widgets/index.d.ts +1 -2
  170. package/lib/typescript/commonjs/ui/widgets/index.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/version.d.ts +1 -1
  172. package/lib/typescript/commonjs/version.d.ts.map +1 -1
  173. package/lib/typescript/module/core/models/index.d.ts +1 -123
  174. package/lib/typescript/module/core/models/index.d.ts.map +1 -1
  175. package/lib/typescript/module/core/models/payment-return-params.d.ts +91 -8
  176. package/lib/typescript/module/core/models/payment-return-params.d.ts.map +1 -1
  177. package/lib/typescript/module/core/models/pending-session-record.d.ts +11 -0
  178. package/lib/typescript/module/core/models/pending-session-record.d.ts.map +1 -0
  179. package/lib/typescript/module/core/services/hosted-flow-controller.d.ts +119 -0
  180. package/lib/typescript/module/core/services/hosted-flow-controller.d.ts.map +1 -0
  181. package/lib/typescript/module/core/services/hosted-flow-state.d.ts +75 -0
  182. package/lib/typescript/module/core/services/hosted-flow-state.d.ts.map +1 -0
  183. package/lib/typescript/module/index.d.ts +5 -14
  184. package/lib/typescript/module/index.d.ts.map +1 -1
  185. package/lib/typescript/module/internal/bank-redirect.d.ts.map +1 -1
  186. package/lib/typescript/module/internal/hosted/bridge-message.d.ts +44 -0
  187. package/lib/typescript/module/internal/hosted/bridge-message.d.ts.map +1 -0
  188. package/lib/typescript/module/internal/hosted/hosted-url.d.ts +30 -0
  189. package/lib/typescript/module/internal/hosted/hosted-url.d.ts.map +1 -0
  190. package/lib/typescript/module/internal/index.d.ts +0 -1
  191. package/lib/typescript/module/internal/index.d.ts.map +1 -1
  192. package/lib/typescript/module/internal/redact-uri.d.ts +21 -1
  193. package/lib/typescript/module/internal/redact-uri.d.ts.map +1 -1
  194. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts +3 -2
  195. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts.map +1 -1
  196. package/lib/typescript/module/internal/url-parts.d.ts +46 -0
  197. package/lib/typescript/module/internal/url-parts.d.ts.map +1 -0
  198. package/lib/typescript/module/public/index.d.ts +4 -6
  199. package/lib/typescript/module/public/index.d.ts.map +1 -1
  200. package/lib/typescript/module/public/payment-result.d.ts +50 -12
  201. package/lib/typescript/module/public/payment-result.d.ts.map +1 -1
  202. package/lib/typescript/module/public/recovery-result.d.ts +11 -20
  203. package/lib/typescript/module/public/recovery-result.d.ts.map +1 -1
  204. package/lib/typescript/module/public/spare-link-config.d.ts +13 -31
  205. package/lib/typescript/module/public/spare-link-config.d.ts.map +1 -1
  206. package/lib/typescript/module/public/spare-link-event.d.ts +29 -31
  207. package/lib/typescript/module/public/spare-link-event.d.ts.map +1 -1
  208. package/lib/typescript/module/public/spare-link-host-api.d.ts +1 -12
  209. package/lib/typescript/module/public/spare-link-host-api.d.ts.map +1 -1
  210. package/lib/typescript/module/public/spare-link-instance.d.ts +26 -20
  211. package/lib/typescript/module/public/spare-link-instance.d.ts.map +1 -1
  212. package/lib/typescript/module/public/spare-link-session.d.ts +3 -8
  213. package/lib/typescript/module/public/spare-link-session.d.ts.map +1 -1
  214. package/lib/typescript/module/public/spare-link.d.ts +1 -1
  215. package/lib/typescript/module/public/spare-link.d.ts.map +1 -1
  216. package/lib/typescript/module/ui/hooks/use-hosted-flow-state.d.ts +9 -0
  217. package/lib/typescript/module/ui/hooks/use-hosted-flow-state.d.ts.map +1 -0
  218. package/lib/typescript/module/ui/hosted/hosted-payment-page.d.ts +17 -0
  219. package/lib/typescript/module/ui/hosted/hosted-payment-page.d.ts.map +1 -0
  220. package/lib/typescript/module/ui/hosted/hosted-payment-webview.d.ts +43 -0
  221. package/lib/typescript/module/ui/hosted/hosted-payment-webview.d.ts.map +1 -0
  222. package/lib/typescript/module/ui/screens/index.d.ts +1 -3
  223. package/lib/typescript/module/ui/screens/index.d.ts.map +1 -1
  224. package/lib/typescript/module/ui/screens/page-unavailable-screen.d.ts +18 -0
  225. package/lib/typescript/module/ui/screens/page-unavailable-screen.d.ts.map +1 -0
  226. package/lib/typescript/module/ui/spare-link-host.d.ts +4 -5
  227. package/lib/typescript/module/ui/spare-link-host.d.ts.map +1 -1
  228. package/lib/typescript/module/ui/widgets/index.d.ts +1 -2
  229. package/lib/typescript/module/ui/widgets/index.d.ts.map +1 -1
  230. package/lib/typescript/module/version.d.ts +1 -1
  231. package/lib/typescript/module/version.d.ts.map +1 -1
  232. package/package.json +24 -22
  233. package/plugins/with-spare-link.js +6 -26
  234. package/src/core/models/index.ts +1 -139
  235. package/src/core/models/payment-return-params.ts +269 -21
  236. package/src/core/models/pending-session-record.ts +10 -0
  237. package/src/core/services/hosted-flow-controller.ts +374 -0
  238. package/src/core/services/hosted-flow-state.ts +123 -0
  239. package/src/index.ts +20 -89
  240. package/src/internal/bank-redirect.ts +23 -9
  241. package/src/internal/hosted/bridge-message.ts +106 -0
  242. package/src/internal/hosted/hosted-url.ts +33 -0
  243. package/src/internal/index.ts +0 -1
  244. package/src/internal/redact-uri.ts +69 -15
  245. package/src/internal/secure-store-pending-session-store.ts +28 -49
  246. package/src/internal/url-parts.ts +134 -0
  247. package/src/public/index.ts +2 -24
  248. package/src/public/payment-result.ts +50 -12
  249. package/src/public/recovery-result.ts +16 -25
  250. package/src/public/spare-link-config.ts +56 -43
  251. package/src/public/spare-link-event.ts +33 -42
  252. package/src/public/spare-link-host-api.ts +1 -14
  253. package/src/public/spare-link-instance.ts +57 -65
  254. package/src/public/spare-link-session.ts +4 -16
  255. package/src/public/spare-link.ts +1 -1
  256. package/src/ui/hooks/use-hosted-flow-state.ts +16 -0
  257. package/src/ui/hosted/hosted-payment-page.tsx +178 -0
  258. package/src/ui/hosted/hosted-payment-webview.tsx +164 -0
  259. package/src/ui/screens/index.ts +4 -6
  260. package/src/ui/screens/page-unavailable-screen.tsx +94 -0
  261. package/src/ui/spare-link-host.tsx +227 -247
  262. package/src/ui/widgets/index.ts +1 -2
  263. package/src/version.ts +1 -1
  264. package/CHANGELOG.md +0 -25
  265. package/lib/commonjs/core/client/link-api-client.js +0 -297
  266. package/lib/commonjs/core/client/link-api-client.js.map +0 -1
  267. package/lib/commonjs/core/errors/payment-api-error.js +0 -35
  268. package/lib/commonjs/core/errors/payment-api-error.js.map +0 -1
  269. package/lib/commonjs/core/models/link-session-status.js +0 -14
  270. package/lib/commonjs/core/models/link-session-status.js.map +0 -1
  271. package/lib/commonjs/core/models/payment-type.js +0 -45
  272. package/lib/commonjs/core/models/payment-type.js.map +0 -1
  273. package/lib/commonjs/core/models/wire-mappers.js +0 -277
  274. package/lib/commonjs/core/models/wire-mappers.js.map +0 -1
  275. package/lib/commonjs/core/services/consent-presenter.js +0 -150
  276. package/lib/commonjs/core/services/consent-presenter.js.map +0 -1
  277. package/lib/commonjs/core/services/execute-resume-if-needed.js +0 -216
  278. package/lib/commonjs/core/services/execute-resume-if-needed.js.map +0 -1
  279. package/lib/commonjs/core/services/multi-payment-rules-presenter.js +0 -151
  280. package/lib/commonjs/core/services/multi-payment-rules-presenter.js.map +0 -1
  281. package/lib/commonjs/core/services/payment-flow-controller.js +0 -547
  282. package/lib/commonjs/core/services/payment-flow-controller.js.map +0 -1
  283. package/lib/commonjs/core/services/payment-flow-state.js +0 -110
  284. package/lib/commonjs/core/services/payment-flow-state.js.map +0 -1
  285. package/lib/commonjs/core/services/payment-result-mapper.js +0 -49
  286. package/lib/commonjs/core/services/payment-result-mapper.js.map +0 -1
  287. package/lib/commonjs/core/services/presentation-utils.js +0 -11
  288. package/lib/commonjs/core/services/presentation-utils.js.map +0 -1
  289. package/lib/commonjs/core/services/redirect-buffer.js +0 -40
  290. package/lib/commonjs/core/services/redirect-buffer.js.map +0 -1
  291. package/lib/commonjs/core/services/user-friendly-messages.js +0 -46
  292. package/lib/commonjs/core/services/user-friendly-messages.js.map +0 -1
  293. package/lib/commonjs/internal/telemetry-collector.js +0 -80
  294. package/lib/commonjs/internal/telemetry-collector.js.map +0 -1
  295. package/lib/commonjs/public/constants.js +0 -21
  296. package/lib/commonjs/public/constants.js.map +0 -1
  297. package/lib/commonjs/public/spare-link-callbacks.js +0 -6
  298. package/lib/commonjs/public/spare-link-callbacks.js.map +0 -1
  299. package/lib/commonjs/ui/consent/charge-bearer-display.js +0 -99
  300. package/lib/commonjs/ui/consent/charge-bearer-display.js.map +0 -1
  301. package/lib/commonjs/ui/consent/consent-accordion.js +0 -94
  302. package/lib/commonjs/ui/consent/consent-accordion.js.map +0 -1
  303. package/lib/commonjs/ui/consent/consent-summary-section.js +0 -27
  304. package/lib/commonjs/ui/consent/consent-summary-section.js.map +0 -1
  305. package/lib/commonjs/ui/consent/cop-information.js +0 -168
  306. package/lib/commonjs/ui/consent/cop-information.js.map +0 -1
  307. package/lib/commonjs/ui/consent/international-payment-summary.js +0 -98
  308. package/lib/commonjs/ui/consent/international-payment-summary.js.map +0 -1
  309. package/lib/commonjs/ui/consent/label-value-rows.js +0 -59
  310. package/lib/commonjs/ui/consent/label-value-rows.js.map +0 -1
  311. package/lib/commonjs/ui/consent/multi-payment-rules-list.js +0 -130
  312. package/lib/commonjs/ui/consent/multi-payment-rules-list.js.map +0 -1
  313. package/lib/commonjs/ui/consent/multi-payment-summary.js +0 -99
  314. package/lib/commonjs/ui/consent/multi-payment-summary.js.map +0 -1
  315. package/lib/commonjs/ui/consent/single-payment-summary.js +0 -158
  316. package/lib/commonjs/ui/consent/single-payment-summary.js.map +0 -1
  317. package/lib/commonjs/ui/consent/terms-link.js +0 -35
  318. package/lib/commonjs/ui/consent/terms-link.js.map +0 -1
  319. package/lib/commonjs/ui/hooks/use-payment-flow-state.js.map +0 -1
  320. package/lib/commonjs/ui/payment-flow-page.js +0 -235
  321. package/lib/commonjs/ui/payment-flow-page.js.map +0 -1
  322. package/lib/commonjs/ui/screens/bank-selection-screen.js +0 -215
  323. package/lib/commonjs/ui/screens/bank-selection-screen.js.map +0 -1
  324. package/lib/commonjs/ui/screens/consent-details-screen.js +0 -124
  325. package/lib/commonjs/ui/screens/consent-details-screen.js.map +0 -1
  326. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js +0 -79
  327. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js.map +0 -1
  328. package/lib/commonjs/ui/widgets/layout-w-header.js +0 -106
  329. package/lib/commonjs/ui/widgets/layout-w-header.js.map +0 -1
  330. package/lib/commonjs/ui/widgets/stepper.js +0 -124
  331. package/lib/commonjs/ui/widgets/stepper.js.map +0 -1
  332. package/lib/module/core/client/link-api-client.js +0 -292
  333. package/lib/module/core/client/link-api-client.js.map +0 -1
  334. package/lib/module/core/errors/payment-api-error.js +0 -29
  335. package/lib/module/core/errors/payment-api-error.js.map +0 -1
  336. package/lib/module/core/models/link-session-status.js +0 -10
  337. package/lib/module/core/models/link-session-status.js.map +0 -1
  338. package/lib/module/core/models/payment-type.js +0 -36
  339. package/lib/module/core/models/payment-type.js.map +0 -1
  340. package/lib/module/core/models/wire-mappers.js +0 -263
  341. package/lib/module/core/models/wire-mappers.js.map +0 -1
  342. package/lib/module/core/services/consent-presenter.js +0 -140
  343. package/lib/module/core/services/consent-presenter.js.map +0 -1
  344. package/lib/module/core/services/execute-resume-if-needed.js +0 -211
  345. package/lib/module/core/services/execute-resume-if-needed.js.map +0 -1
  346. package/lib/module/core/services/multi-payment-rules-presenter.js +0 -146
  347. package/lib/module/core/services/multi-payment-rules-presenter.js.map +0 -1
  348. package/lib/module/core/services/payment-flow-controller.js +0 -544
  349. package/lib/module/core/services/payment-flow-controller.js.map +0 -1
  350. package/lib/module/core/services/payment-flow-state.js +0 -106
  351. package/lib/module/core/services/payment-flow-state.js.map +0 -1
  352. package/lib/module/core/services/payment-result-mapper.js +0 -45
  353. package/lib/module/core/services/payment-result-mapper.js.map +0 -1
  354. package/lib/module/core/services/presentation-utils.js +0 -7
  355. package/lib/module/core/services/presentation-utils.js.map +0 -1
  356. package/lib/module/core/services/redirect-buffer.js +0 -33
  357. package/lib/module/core/services/redirect-buffer.js.map +0 -1
  358. package/lib/module/core/services/user-friendly-messages.js +0 -42
  359. package/lib/module/core/services/user-friendly-messages.js.map +0 -1
  360. package/lib/module/internal/telemetry-collector.js +0 -75
  361. package/lib/module/internal/telemetry-collector.js.map +0 -1
  362. package/lib/module/public/constants.js +0 -17
  363. package/lib/module/public/constants.js.map +0 -1
  364. package/lib/module/public/spare-link-callbacks.js +0 -4
  365. package/lib/module/public/spare-link-callbacks.js.map +0 -1
  366. package/lib/module/ui/consent/charge-bearer-display.js +0 -95
  367. package/lib/module/ui/consent/charge-bearer-display.js.map +0 -1
  368. package/lib/module/ui/consent/consent-accordion.js +0 -90
  369. package/lib/module/ui/consent/consent-accordion.js.map +0 -1
  370. package/lib/module/ui/consent/consent-summary-section.js +0 -23
  371. package/lib/module/ui/consent/consent-summary-section.js.map +0 -1
  372. package/lib/module/ui/consent/cop-information.js +0 -165
  373. package/lib/module/ui/consent/cop-information.js.map +0 -1
  374. package/lib/module/ui/consent/international-payment-summary.js +0 -94
  375. package/lib/module/ui/consent/international-payment-summary.js.map +0 -1
  376. package/lib/module/ui/consent/label-value-rows.js +0 -55
  377. package/lib/module/ui/consent/label-value-rows.js.map +0 -1
  378. package/lib/module/ui/consent/multi-payment-rules-list.js +0 -125
  379. package/lib/module/ui/consent/multi-payment-rules-list.js.map +0 -1
  380. package/lib/module/ui/consent/multi-payment-summary.js +0 -95
  381. package/lib/module/ui/consent/multi-payment-summary.js.map +0 -1
  382. package/lib/module/ui/consent/single-payment-summary.js +0 -154
  383. package/lib/module/ui/consent/single-payment-summary.js.map +0 -1
  384. package/lib/module/ui/consent/terms-link.js +0 -31
  385. package/lib/module/ui/consent/terms-link.js.map +0 -1
  386. package/lib/module/ui/hooks/use-payment-flow-state.js.map +0 -1
  387. package/lib/module/ui/payment-flow-page.js +0 -232
  388. package/lib/module/ui/payment-flow-page.js.map +0 -1
  389. package/lib/module/ui/screens/bank-selection-screen.js +0 -211
  390. package/lib/module/ui/screens/bank-selection-screen.js.map +0 -1
  391. package/lib/module/ui/screens/consent-details-screen.js +0 -120
  392. package/lib/module/ui/screens/consent-details-screen.js.map +0 -1
  393. package/lib/module/ui/screens/mandate-setup-success-screen.js +0 -75
  394. package/lib/module/ui/screens/mandate-setup-success-screen.js.map +0 -1
  395. package/lib/module/ui/widgets/layout-w-header.js +0 -102
  396. package/lib/module/ui/widgets/layout-w-header.js.map +0 -1
  397. package/lib/module/ui/widgets/stepper.js +0 -120
  398. package/lib/module/ui/widgets/stepper.js.map +0 -1
  399. package/lib/typescript/commonjs/core/client/link-api-client.d.ts +0 -70
  400. package/lib/typescript/commonjs/core/client/link-api-client.d.ts.map +0 -1
  401. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts +0 -15
  402. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts.map +0 -1
  403. package/lib/typescript/commonjs/core/models/link-session-status.d.ts +0 -6
  404. package/lib/typescript/commonjs/core/models/link-session-status.d.ts.map +0 -1
  405. package/lib/typescript/commonjs/core/models/payment-type.d.ts +0 -18
  406. package/lib/typescript/commonjs/core/models/payment-type.d.ts.map +0 -1
  407. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts +0 -19
  408. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts.map +0 -1
  409. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts +0 -67
  410. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts.map +0 -1
  411. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts +0 -32
  412. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts.map +0 -1
  413. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts +0 -9
  414. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts.map +0 -1
  415. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts +0 -146
  416. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts.map +0 -1
  417. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts +0 -64
  418. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts.map +0 -1
  419. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts +0 -5
  420. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts.map +0 -1
  421. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts +0 -5
  422. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts.map +0 -1
  423. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts +0 -6
  424. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts.map +0 -1
  425. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts +0 -6
  426. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts.map +0 -1
  427. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts +0 -2
  428. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts.map +0 -1
  429. package/lib/typescript/commonjs/public/constants.d.ts +0 -12
  430. package/lib/typescript/commonjs/public/constants.d.ts.map +0 -1
  431. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts +0 -14
  432. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts.map +0 -1
  433. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts +0 -5
  434. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts.map +0 -1
  435. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts +0 -10
  436. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts.map +0 -1
  437. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts +0 -6
  438. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts.map +0 -1
  439. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts +0 -6
  440. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts.map +0 -1
  441. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts +0 -6
  442. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts.map +0 -1
  443. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts +0 -10
  444. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts.map +0 -1
  445. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts +0 -15
  446. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts.map +0 -1
  447. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts +0 -6
  448. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts.map +0 -1
  449. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts +0 -6
  450. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts.map +0 -1
  451. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts +0 -2
  452. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts.map +0 -1
  453. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts +0 -9
  454. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts.map +0 -1
  455. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts +0 -20
  456. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts.map +0 -1
  457. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts +0 -15
  458. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts.map +0 -1
  459. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts +0 -13
  460. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts.map +0 -1
  461. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts +0 -10
  462. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts.map +0 -1
  463. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts +0 -20
  464. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts.map +0 -1
  465. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts +0 -15
  466. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts.map +0 -1
  467. package/lib/typescript/module/core/client/link-api-client.d.ts +0 -70
  468. package/lib/typescript/module/core/client/link-api-client.d.ts.map +0 -1
  469. package/lib/typescript/module/core/errors/payment-api-error.d.ts +0 -15
  470. package/lib/typescript/module/core/errors/payment-api-error.d.ts.map +0 -1
  471. package/lib/typescript/module/core/models/link-session-status.d.ts +0 -6
  472. package/lib/typescript/module/core/models/link-session-status.d.ts.map +0 -1
  473. package/lib/typescript/module/core/models/payment-type.d.ts +0 -18
  474. package/lib/typescript/module/core/models/payment-type.d.ts.map +0 -1
  475. package/lib/typescript/module/core/models/wire-mappers.d.ts +0 -19
  476. package/lib/typescript/module/core/models/wire-mappers.d.ts.map +0 -1
  477. package/lib/typescript/module/core/services/consent-presenter.d.ts +0 -67
  478. package/lib/typescript/module/core/services/consent-presenter.d.ts.map +0 -1
  479. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts +0 -32
  480. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts.map +0 -1
  481. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts +0 -9
  482. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts.map +0 -1
  483. package/lib/typescript/module/core/services/payment-flow-controller.d.ts +0 -146
  484. package/lib/typescript/module/core/services/payment-flow-controller.d.ts.map +0 -1
  485. package/lib/typescript/module/core/services/payment-flow-state.d.ts +0 -64
  486. package/lib/typescript/module/core/services/payment-flow-state.d.ts.map +0 -1
  487. package/lib/typescript/module/core/services/payment-result-mapper.d.ts +0 -5
  488. package/lib/typescript/module/core/services/payment-result-mapper.d.ts.map +0 -1
  489. package/lib/typescript/module/core/services/presentation-utils.d.ts +0 -5
  490. package/lib/typescript/module/core/services/presentation-utils.d.ts.map +0 -1
  491. package/lib/typescript/module/core/services/redirect-buffer.d.ts +0 -6
  492. package/lib/typescript/module/core/services/redirect-buffer.d.ts.map +0 -1
  493. package/lib/typescript/module/core/services/user-friendly-messages.d.ts +0 -6
  494. package/lib/typescript/module/core/services/user-friendly-messages.d.ts.map +0 -1
  495. package/lib/typescript/module/internal/telemetry-collector.d.ts +0 -2
  496. package/lib/typescript/module/internal/telemetry-collector.d.ts.map +0 -1
  497. package/lib/typescript/module/public/constants.d.ts +0 -12
  498. package/lib/typescript/module/public/constants.d.ts.map +0 -1
  499. package/lib/typescript/module/public/spare-link-callbacks.d.ts +0 -14
  500. package/lib/typescript/module/public/spare-link-callbacks.d.ts.map +0 -1
  501. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts +0 -5
  502. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts.map +0 -1
  503. package/lib/typescript/module/ui/consent/consent-accordion.d.ts +0 -10
  504. package/lib/typescript/module/ui/consent/consent-accordion.d.ts.map +0 -1
  505. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts +0 -6
  506. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts.map +0 -1
  507. package/lib/typescript/module/ui/consent/cop-information.d.ts +0 -6
  508. package/lib/typescript/module/ui/consent/cop-information.d.ts.map +0 -1
  509. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts +0 -6
  510. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts.map +0 -1
  511. package/lib/typescript/module/ui/consent/label-value-rows.d.ts +0 -10
  512. package/lib/typescript/module/ui/consent/label-value-rows.d.ts.map +0 -1
  513. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts +0 -15
  514. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts.map +0 -1
  515. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts +0 -6
  516. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts.map +0 -1
  517. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts +0 -6
  518. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts.map +0 -1
  519. package/lib/typescript/module/ui/consent/terms-link.d.ts +0 -2
  520. package/lib/typescript/module/ui/consent/terms-link.d.ts.map +0 -1
  521. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts +0 -9
  522. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts.map +0 -1
  523. package/lib/typescript/module/ui/payment-flow-page.d.ts +0 -20
  524. package/lib/typescript/module/ui/payment-flow-page.d.ts.map +0 -1
  525. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts +0 -15
  526. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts.map +0 -1
  527. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts +0 -13
  528. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts.map +0 -1
  529. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts +0 -10
  530. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts.map +0 -1
  531. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts +0 -20
  532. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts.map +0 -1
  533. package/lib/typescript/module/ui/widgets/stepper.d.ts +0 -15
  534. package/lib/typescript/module/ui/widgets/stepper.d.ts.map +0 -1
  535. package/src/core/client/link-api-client.ts +0 -414
  536. package/src/core/errors/payment-api-error.ts +0 -35
  537. package/src/core/models/link-session-status.ts +0 -7
  538. package/src/core/models/payment-type.ts +0 -54
  539. package/src/core/models/wire-mappers.ts +0 -315
  540. package/src/core/services/consent-presenter.ts +0 -213
  541. package/src/core/services/execute-resume-if-needed.ts +0 -243
  542. package/src/core/services/multi-payment-rules-presenter.ts +0 -158
  543. package/src/core/services/payment-flow-controller.ts +0 -607
  544. package/src/core/services/payment-flow-state.ts +0 -124
  545. package/src/core/services/payment-result-mapper.ts +0 -41
  546. package/src/core/services/presentation-utils.ts +0 -4
  547. package/src/core/services/redirect-buffer.ts +0 -34
  548. package/src/core/services/user-friendly-messages.ts +0 -39
  549. package/src/internal/telemetry-collector.ts +0 -90
  550. package/src/public/constants.ts +0 -14
  551. package/src/public/spare-link-callbacks.ts +0 -20
  552. package/src/ui/consent/charge-bearer-display.tsx +0 -68
  553. package/src/ui/consent/consent-accordion.tsx +0 -89
  554. package/src/ui/consent/consent-summary-section.tsx +0 -19
  555. package/src/ui/consent/cop-information.tsx +0 -121
  556. package/src/ui/consent/international-payment-summary.tsx +0 -83
  557. package/src/ui/consent/label-value-rows.tsx +0 -50
  558. package/src/ui/consent/multi-payment-rules-list.tsx +0 -138
  559. package/src/ui/consent/multi-payment-summary.tsx +0 -82
  560. package/src/ui/consent/single-payment-summary.tsx +0 -123
  561. package/src/ui/consent/terms-link.tsx +0 -27
  562. package/src/ui/hooks/use-payment-flow-state.ts +0 -16
  563. package/src/ui/payment-flow-page.tsx +0 -254
  564. package/src/ui/screens/bank-selection-screen.tsx +0 -209
  565. package/src/ui/screens/consent-details-screen.tsx +0 -106
  566. package/src/ui/screens/mandate-setup-success-screen.tsx +0 -72
  567. package/src/ui/widgets/layout-w-header.tsx +0 -89
  568. package/src/ui/widgets/stepper.tsx +0 -126
@@ -1,124 +1,2 @@
1
- /**
2
- * SDK-side models. These are the camelCase shapes returned from the
3
- * {@link LinkApiClient} — translated from the snake_case wire format defined
4
- * by tofa (see harness `src/types/wire.ts` for the raw wire shapes).
5
- */
6
- export interface AmountDto {
7
- amount: string;
8
- currency: string;
9
- }
10
- export interface PaymentScheduleEntry {
11
- amount?: AmountDto;
12
- maxAmount?: AmountDto;
13
- paymentExecutionDate?: string;
14
- }
15
- export interface PeriodicControls {
16
- maxCumulativeAmountPerPeriod?: AmountDto;
17
- maxCumulativeNumberOfPaymentsPerPeriod?: number;
18
- }
19
- export interface PeriodicSchedule {
20
- frequency?: string;
21
- startDate?: string;
22
- endDate?: string;
23
- amount?: AmountDto;
24
- maxAmount?: AmountDto;
25
- controls?: PeriodicControls;
26
- }
27
- export interface CurrencyRequest {
28
- priority?: string;
29
- purpose?: string;
30
- chargeBearer?: string;
31
- }
32
- export interface PaymentInstructions {
33
- amount?: AmountDto;
34
- isInternationalPayment?: boolean;
35
- maxCumulativeNumberOfPayments?: number;
36
- maxCumulativeAmount?: AmountDto;
37
- paymentSchedule?: PaymentScheduleEntry[];
38
- periodicSchedule?: PeriodicSchedule;
39
- currencyRequest?: CurrencyRequest;
40
- }
41
- /** Payment request DTO as carried by GET /link. */
42
- export interface CreatePaymentRequestInput {
43
- id: string;
44
- internalReference: string;
45
- status: string;
46
- type: string;
47
- creditorType: string;
48
- purpose: string;
49
- creditorReference?: string;
50
- merchantReference: string;
51
- createdAt: string;
52
- updatedAt: string;
53
- isCopVerified: boolean;
54
- creditorAccount: {
55
- schemeName: string;
56
- identification: string;
57
- name?: string;
58
- };
59
- instructions: PaymentInstructions;
60
- }
61
- export interface LinkSessionResponse {
62
- request: CreatePaymentRequestInput;
63
- providerId?: string;
64
- }
65
- export interface ConsentResponse {
66
- redirectUrl: string;
67
- mobileAppUrl?: string;
68
- }
69
- export interface LinkStatusResponse {
70
- linkSessionId: string;
71
- /** created | initialized | redirected | callback_received | completed | failed | cancelled | expired */
72
- status: string;
73
- /** payment | account */
74
- intent: string;
75
- /** sip | multipayment | account */
76
- resourceType: string;
77
- expiresAt: string;
78
- failureCode?: string;
79
- cancelledAt?: string;
80
- completedAt?: string;
81
- failedAt?: string;
82
- }
83
- export interface CopResponse {
84
- /** `Match` | `NoMatch` | `Unavailable` */
85
- matchIndicator: string;
86
- maskedName?: string;
87
- }
88
- export interface TelemetryResponse {
89
- accepted?: boolean;
90
- linkSessionId?: string;
91
- }
92
- export interface PatchTokenResponse {
93
- status: string;
94
- linkSession?: {
95
- linkSessionId: string;
96
- status: string;
97
- cancelledAt: string | null;
98
- failedAt: string | null;
99
- failureCode: string | null;
100
- };
101
- }
102
- export interface ProviderCountry {
103
- englishName: string;
104
- iso3166Code: string;
105
- }
106
- export interface ProviderSummary {
107
- id: string;
108
- code: string;
109
- name: string;
110
- logoUrl: string;
111
- status: string;
112
- country: ProviderCountry;
113
- }
114
- /** Persisted record describing an in-flight payment for cold-start recovery. */
115
- export interface PendingSessionRecord {
116
- sessionId: string;
117
- selectedBankId: string;
118
- authorizationUrl: string;
119
- consentAt?: number;
120
- recoveryAttempts: number;
121
- /** Merchant reference from the link session, used to bind buffered return URIs. */
122
- merchantRef?: string;
123
- }
1
+ export type { PendingSessionRecord } from './pending-session-record';
124
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/models/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B,CAAC,EAAE,SAAS,CAAC;IACzC,sCAAsC,CAAC,EAAE,MAAM,CAAC;CACjD;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,eAAe,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACzC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,mDAAmD;AACnD,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,YAAY,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,yBAAyB,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,wGAAwG;IACxG,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,gFAAgF;AAChF,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/models/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,15 +1,98 @@
1
+ export declare function isPaymentReturnCallbackUri(uri: URL | string): boolean;
2
+ /** Reads the query of a return URI into the shape the extractors below take. */
3
+ export declare function paymentReturnParams(uri: URL | string): Record<string, string>;
1
4
  /**
2
- * Query-parameter helpers for bank / authorize return URIs.
5
+ * Whether the return URI reports a completed payment.
3
6
  *
4
- * The Link service appends `exchange_code` on success and `error_code` on
5
- * authorize failure (legacy integrations may still send `error`).
7
+ * Only a known settled status counts. Absent, in-flight or a status this version
8
+ * has not been taught is read as not-a-success: a payer returned without one has
9
+ * not been told their payment succeeded, and neither should the app.
6
10
  */
7
- export declare function isPaymentReturnCallbackUri(uri: URL | string): boolean;
11
+ export declare function isPaymentReturnSuccess(params: Record<string, string>): boolean;
12
+ /** The payment request reference, if the return URI named one. */
13
+ export declare function extractPaymentReturnReference(params: Record<string, string>): string | undefined;
14
+ /** The merchant's own reference for the attempt, if present. */
15
+ export declare function extractPaymentReturnMerchantRef(params: Record<string, string>): string | undefined;
16
+ /**
17
+ * Spare's identifier for the payment itself, present on a success.
18
+ *
19
+ * Distinct from the reference, which names the *request*. This is what a merchant
20
+ * records against the order.
21
+ */
22
+ export declare function extractPaymentReturnPaymentId(params: Record<string, string>): string | undefined;
23
+ /**
24
+ * Spare's identifier for a mandate, present on a mandate's success.
25
+ *
26
+ * A return carries this or {@link extractPaymentReturnPaymentId}, never both: a
27
+ * single payment names a payment, every mandate type names a mandate. Read
28
+ * whichever is present rather than assuming which one the flow produced.
29
+ */
30
+ export declare function extractPaymentReturnMandateId(params: Record<string, string>): string | undefined;
31
+ /**
32
+ * The signature over this return, if it carried one.
33
+ *
34
+ * An ES256 JWS whose payload is the return URL. Handed to the caller unverified —
35
+ * checking it needs Spare's public key, which the SDK does not hold.
36
+ */
37
+ export declare function extractPaymentReturnSignature(params: Record<string, string>): string | undefined;
38
+ /**
39
+ * The failure code from a payment return URI.
40
+ *
41
+ * A return that says only that it failed, naming no key, still yields something a
42
+ * merchant can branch on.
43
+ */
44
+ export declare function extractPaymentReturnErrorCode(params: Record<string, string>): string | undefined;
45
+ /**
46
+ * The machine-readable reason a payment did not complete, e.g. `user_cancelled`.
47
+ *
48
+ * Kept alongside the code because the code is often generic where this is not.
49
+ */
50
+ export declare function extractPaymentReturnErrorReason(params: Record<string, string>): string | undefined;
51
+ /**
52
+ * The human-readable failure text, if the return carried one.
53
+ *
54
+ * For the merchant's logs and their own copy decisions — not shown to the payer
55
+ * by this SDK, which cannot verify anything the link says.
56
+ */
57
+ export declare function extractPaymentReturnErrorDescription(params: Record<string, string>): string | undefined;
58
+ /**
59
+ * Everything a return said, gathered once.
60
+ *
61
+ * Carried whole through the flow so a new parameter reaches the caller by being
62
+ * read here, rather than by being threaded through every state factory.
63
+ */
64
+ export interface PaymentReturnReport {
65
+ /**
66
+ * The payment request this return is about.
67
+ *
68
+ * Compared against the payment in flight before the outcome is applied: a
69
+ * delayed or spoofed callback naming another payment must not resolve this one.
70
+ */
71
+ readonly reference?: string;
72
+ readonly merchantRef?: string;
73
+ readonly paymentId?: string;
74
+ /**
75
+ * Spare's identifier for a mandate. Set instead of `paymentId` when the flow
76
+ * created a mandate rather than a single payment.
77
+ */
78
+ readonly mandateId?: string;
79
+ readonly signature?: string;
80
+ readonly errorCode?: string;
81
+ readonly errorReason?: string;
82
+ readonly errorDescription?: string;
83
+ }
8
84
  /**
9
- * Extract the failure code from a payment-return URI, if present.
85
+ * What a return said about the payment.
10
86
  *
11
- * `error_code` takes precedence over the legacy `error` query param. A
12
- * `status=failure` with no other code resolves to `'authorize_failed'`.
87
+ * `unknown` is not a failure. The status vocabulary grows, and a payment the
88
+ * service has not finished deciding on must not be reported as one that failed —
89
+ * the merchant's backend is what resolves it.
13
90
  */
14
- export declare function extractPaymentReturnErrorCode(params: URLSearchParams): string | undefined;
91
+ export type PaymentReturnOutcome = 'processed' | 'rejected' | 'unknown';
92
+ export declare function paymentReturnOutcome(params: Record<string, string>): PaymentReturnOutcome;
93
+ /** Reads a return URI into an outcome and everything it reported. */
94
+ export declare function readPaymentReturn(uri: URL | string): {
95
+ outcome: PaymentReturnOutcome;
96
+ report: PaymentReturnReport;
97
+ };
15
98
  //# sourceMappingURL=payment-return-params.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"payment-return-params.d.ts","sourceRoot":"","sources":["../../../../../src/core/models/payment-return-params.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAarE;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAKzF"}
1
+ {"version":3,"file":"payment-return-params.d.ts","sourceRoot":"","sources":["../../../../../src/core/models/payment-return-params.ts"],"names":[],"mappings":"AAqEA,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAUrE;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE7E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAG9E;AAED,kEAAkE;AAClE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,CAEhG;AAED,gEAAgE;AAChE,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,CAEhG;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,CAEhG;AAsBD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,CAMhG;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,GAAG,SAAS,CAGpB;AAED;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAExE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,oBAAoB,CAiBzF;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG;IACpD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAeA"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * What the SDK remembers about a payment that was still in flight.
3
+ *
4
+ * Only the reference: the SDK holds no credentials and can ask the service
5
+ * nothing, so the record exists to tell a cold start which payment to hand the
6
+ * merchant's backend for resolution — not to resume the flow itself.
7
+ */
8
+ export interface PendingSessionRecord {
9
+ reference: string;
10
+ }
11
+ //# sourceMappingURL=pending-session-record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pending-session-record.d.ts","sourceRoot":"","sources":["../../../../../src/core/models/pending-session-record.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,119 @@
1
+ import { type HostedFlowState } from './hosted-flow-state';
2
+ /** Opens a bank authorization URL outside the WebView. */
3
+ export type BankLauncher = (url: string) => Promise<void>;
4
+ /**
5
+ * How long the page has to become interactive, measured from when the webview
6
+ * mounts.
7
+ *
8
+ * A page can load and still never speak: its script can fail to fetch, or throw
9
+ * before it posts `spare.ready`. Nothing else would notice, and the payer would
10
+ * hold a blank frame for as long as they were willing to.
11
+ *
12
+ * Measured from the webview rather than from this controller, because a
13
+ * controller is built before the screen is: the sheet's animation and whatever
14
+ * the host waits on before rendering would otherwise be charged against the
15
+ * page's budget, and a page that merely loads slowly would be called unreachable.
16
+ */
17
+ export declare const DEFAULT_READY_TIMEOUT_MS = 20000;
18
+ export interface HostedFlowControllerOptions {
19
+ reference: string;
20
+ bankLauncher?: BankLauncher;
21
+ /** Override the readiness timeout. Tests set this alongside fake timers. */
22
+ readyTimeoutMs?: number;
23
+ }
24
+ /**
25
+ * Drives a hosted payment from the messages the page sends and the deep link
26
+ * the OS delivers when the payer comes back.
27
+ *
28
+ * The SDK makes no API calls of its own: the page creates the consent, and the
29
+ * merchant's backend reads the result. So this controller only ever reacts —
30
+ * which is why every transition here is guarded against arriving after the flow
31
+ * has already resolved.
32
+ */
33
+ export declare class HostedFlowController {
34
+ readonly reference: string;
35
+ private readonly bankLauncher;
36
+ private readonly listeners;
37
+ private readonly readyTimeoutMs;
38
+ private currentState;
39
+ private readyTimer;
40
+ constructor(options: HostedFlowControllerOptions);
41
+ /**
42
+ * Records that the webview carrying the page is on screen.
43
+ *
44
+ * Starts the clock the page has to become interactive. Called on mount rather
45
+ * than on load, so a document that never finishes arriving is covered too.
46
+ */
47
+ reportPageMounted(): void;
48
+ get state(): HostedFlowState;
49
+ /** Subscribe to state changes. Returns an unsubscribe function. */
50
+ subscribe(listener: () => void): () => void;
51
+ /**
52
+ * Reacts to a message from the hosted page.
53
+ *
54
+ * Resolves to whether the message was understood, so a caller can log what it
55
+ * dropped. An unrecognised message is not a failure: the page keeps working
56
+ * and the payer is unaffected.
57
+ */
58
+ handleBridgeMessage(raw: unknown): Promise<boolean>;
59
+ /**
60
+ * Resolves the flow from the deep link the payer returned through.
61
+ *
62
+ * The outcome is read from the link rather than inferred: it is the only
63
+ * report of what the bank and the payment actually did.
64
+ */
65
+ /** Whether the page is still the thing on screen and may still be believed. */
66
+ private isPagePresented;
67
+ handleReturn(uri: URL | string): void;
68
+ /**
69
+ * Records that the payment page could not be loaded.
70
+ *
71
+ * Only meaningful before the bank is opened. Once the payer is away, a load
72
+ * error is the WebView behind them and says nothing about their payment.
73
+ *
74
+ * Before the page has spoken this does not resolve the flow: nothing has been
75
+ * attempted, so the payer is offered the page again rather than told their
76
+ * payment failed.
77
+ *
78
+ * After it has spoken, it does. By then the payer may have chosen a bank and
79
+ * the page may have created a consent for it, and reloading from the start
80
+ * could create a second one while silently discarding what they entered.
81
+ */
82
+ failToLoad(): void;
83
+ /**
84
+ * Asks for the page again after it could not be reached.
85
+ *
86
+ * The attempt is counted so the screen mounts a fresh webview: reusing the one
87
+ * that failed would show the payer the same dead frame.
88
+ */
89
+ retry(): void;
90
+ /**
91
+ * Records that the payer gave up on a page that could not be reached.
92
+ *
93
+ * Reported as a failure rather than abandonment: the payer did not leave a
94
+ * payment in progress, the SDK never managed to present one.
95
+ */
96
+ giveUp(): void;
97
+ /**
98
+ * Records that the payer left before the flow resolved.
99
+ *
100
+ * A payment already at the bank may still complete after this, so it is
101
+ * reported as abandoned rather than failed: the merchant's backend, not the
102
+ * app, is what knows.
103
+ */
104
+ abandon(): void;
105
+ dispose(): void;
106
+ private watchForReadiness;
107
+ private stopWatchingForReadiness;
108
+ /**
109
+ * Opens the bank and waits for the payer to be sent back.
110
+ *
111
+ * The URL is opened exactly once, and never once the flow has resolved. The
112
+ * page posts on render, so a rebuild can repeat the message; opening a second
113
+ * browser — or one for a payment the payer has already left — would leave them
114
+ * authorizing in a window whose return nobody is waiting for.
115
+ */
116
+ private openBank;
117
+ private moveTo;
118
+ }
119
+ //# sourceMappingURL=hosted-flow-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-flow-controller.d.ts","sourceRoot":"","sources":["../../../../../src/core/services/hosted-flow-controller.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,eAAe,EAAqC,MAAM,qBAAqB,CAAC;AAI9F,0DAA0D;AAC1D,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAE/C,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,UAAU,CAA4C;gBAElD,OAAO,EAAE,2BAA2B;IAQhD;;;;;OAKG;IACH,iBAAiB,IAAI,IAAI;IAKzB,IAAI,KAAK,IAAI,eAAe,CAE3B;IAED,mEAAmE;IACnE,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAO3C;;;;;;OAMG;IACG,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA4CzD;;;;;OAKG;IACH,+EAA+E;IAC/E,OAAO,CAAC,eAAe;IAKvB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI;IA4CrC;;;;;;;;;;;;;OAaG;IACH,UAAU,IAAI,IAAI;IA2BlB;;;;;OAKG;IACH,KAAK,IAAI,IAAI;IAWb;;;;;OAKG;IACH,MAAM,IAAI,IAAI;IAed;;;;;;OAMG;IACH,OAAO,IAAI,IAAI;IAmBf,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,wBAAwB;IAMhC;;;;;;;OAOG;YACW,QAAQ;IAiCtB,OAAO,CAAC,MAAM;CAcf"}
@@ -0,0 +1,75 @@
1
+ import type { PaymentReturnReport } from '../models/payment-return-params';
2
+ /**
3
+ * Where a hosted payment has got to.
4
+ *
5
+ * The phases the payer spends most of their time in — choosing a bank, reading
6
+ * the consent, confirming the payee — are all `hosted`: they happen inside the
7
+ * page, which does not report them, and the SDK has nothing to decide there.
8
+ */
9
+ export type HostedFlowPhase =
10
+ /** The page is being fetched. Nothing is interactive yet. */
11
+ 'loading'
12
+ /** The page is interactive and the payer is working through it. */
13
+ | 'hosted'
14
+ /**
15
+ * The page could not be loaded, or loaded and never became interactive.
16
+ *
17
+ * Deliberately not terminal. Nothing has been attempted — no consent, no bank,
18
+ * no money — so the payer is offered the page again rather than told their
19
+ * payment failed, and the flow stays open while they decide.
20
+ */
21
+ | 'unreachable'
22
+ /** A consent exists and the bank is being opened outside the WebView. */
23
+ | 'redirecting'
24
+ /** The bank has the payer. The next thing to happen is a deep link home. */
25
+ | 'awaitingCallback' | 'succeeded' | 'failed' | 'cancelled'
26
+ /** The payer left before the flow resolved either way. */
27
+ | 'abandoned';
28
+ /** Immutable snapshot of a hosted payment. */
29
+ export interface HostedFlowState {
30
+ readonly phase: HostedFlowPhase;
31
+ /**
32
+ * The payment request this flow is paying. Also what the merchant's backend
33
+ * reads the authoritative result by.
34
+ */
35
+ readonly reference: string;
36
+ /**
37
+ * Everything the return deep link reported — the merchant's reference, the
38
+ * payment id, the signature, the failure detail.
39
+ *
40
+ * Carried whole so a parameter added to the return contract reaches the caller
41
+ * without threading a new field through every factory below.
42
+ */
43
+ readonly report?: PaymentReturnReport;
44
+ readonly errorCode?: string;
45
+ /**
46
+ * How many times the page has been asked for, starting at 1.
47
+ *
48
+ * The screen keys the webview on this so a retry mounts a fresh one; reusing
49
+ * the failed instance would show the payer the same dead frame.
50
+ */
51
+ readonly attempt: number;
52
+ }
53
+ export declare function isTerminalPhase(phase: HostedFlowPhase): boolean;
54
+ /** Factories for each phase, so no caller assembles a state by hand. */
55
+ export declare const HostedFlowStates: {
56
+ readonly loading: (reference: string, attempt?: number) => HostedFlowState;
57
+ readonly hosted: (reference: string, attempt?: number) => HostedFlowState;
58
+ readonly unreachable: (reference: string, attempt?: number) => HostedFlowState;
59
+ readonly redirecting: (reference: string, attempt?: number) => HostedFlowState;
60
+ readonly awaitingCallback: (reference: string, attempt?: number) => HostedFlowState;
61
+ readonly succeeded: (args: {
62
+ reference: string;
63
+ report?: PaymentReturnReport;
64
+ attempt?: number;
65
+ }) => HostedFlowState;
66
+ readonly failed: (args: {
67
+ reference: string;
68
+ errorCode: string;
69
+ report?: PaymentReturnReport;
70
+ attempt?: number;
71
+ }) => HostedFlowState;
72
+ readonly cancelled: (reference: string, attempt?: number) => HostedFlowState;
73
+ readonly abandoned: (reference: string, attempt?: number) => HostedFlowState;
74
+ };
75
+ //# sourceMappingURL=hosted-flow-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-flow-state.d.ts","sourceRoot":"","sources":["../../../../../src/core/services/hosted-flow-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E;;;;;;GAMG;AACH,MAAM,MAAM,eAAe;AACzB,6DAA6D;AAC3D,SAAS;AACX,mEAAmE;GACjE,QAAQ;AACV;;;;;;GAMG;GACD,aAAa;AACf,yEAAyE;GACvE,aAAa;AACf,4EAA4E;GAC1E,kBAAkB,GAClB,WAAW,GACX,QAAQ,GACR,WAAW;AACb,0DAA0D;GACxD,WAAW,CAAC;AAEhB,8CAA8C;AAC9C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAEtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AASD,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE/D;AAED,wEAAwE;AACxE,eAAO,MAAM,gBAAgB;kCACR,MAAM,uBAAgB,eAAe;iCAGtC,MAAM,uBAAgB,eAAe;sCAGhC,MAAM,uBAAgB,eAAe;sCAGrC,MAAM,uBAAgB,eAAe;2CAGhC,MAAM,uBAAgB,eAAe;+BAGjD;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAG,eAAe;4BAQN;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAG,eAAe;oCASE,MAAM,uBAAgB,eAAe;oCAGrC,MAAM,uBAAgB,eAAe;CAGlD,CAAC"}
@@ -1,19 +1,10 @@
1
1
  export { SDK_VERSION } from './version';
2
2
  export * from './public';
3
- export { PaymentApiError, isPaymentApiError } from './core/errors/payment-api-error';
4
- export type { CreatePaymentRequestInput, AmountDto, PaymentInstructions, PaymentScheduleEntry, PeriodicSchedule, PeriodicControls, CurrencyRequest, LinkSessionResponse, ConsentResponse, LinkStatusResponse, CopResponse, TelemetryResponse, PatchTokenResponse, ProviderCountry, ProviderSummary, PendingSessionRecord, } from './core/models';
5
- export { isPaymentReturnCallbackUri, extractPaymentReturnErrorCode, } from './core/models/payment-return-params';
6
- export { LinkApiClient, type LinkApiClientOptions } from './core/client/link-api-client';
7
- export { PaymentFlowController, type PaymentFlowControllerOptions, type Clock, } from './core/services/payment-flow-controller';
8
- export { PaymentFlowStates, type PaymentFlowPhase, type PaymentFlowState, } from './core/services/payment-flow-state';
3
+ export { type PaymentReturnReport, isPaymentReturnCallbackUri, readPaymentReturn, extractPaymentReturnErrorCode, extractPaymentReturnErrorDescription, extractPaymentReturnErrorReason, extractPaymentReturnPaymentId, extractPaymentReturnMandateId, extractPaymentReturnReference, extractPaymentReturnMerchantRef, extractPaymentReturnSignature, isPaymentReturnSuccess, paymentReturnParams, } from './core/models/payment-return-params';
4
+ export type { HostedFlowPhase, HostedFlowState } from './core/services/hosted-flow-state';
9
5
  export type { PendingSessionStore } from './core/services/pending-session-store';
10
- export { presentConsent, summaryFromState, formatAmount, formatCop, type ConsentSummaryData, type SinglePaymentSummaryData, type InternationalPaymentSummaryData, type MultiPaymentSummaryData, type ConsentDisplayData, type CopDisplayData, type CopMatchIndicator, } from './core/services/consent-presenter';
11
- export { buildMultiPaymentRules, rulesSectionTitle, type LabelValueRow, } from './core/services/multi-payment-rules-presenter';
12
- export { isMultiPayment, isInternational, supportsConfirmationOfPayee, resolvedPaymentType, consentUiVariant, PaymentType, type ConsentUiVariant, } from './core/models/payment-type';
13
- export { SpareLinkHost, type SpareLinkHostProps, } from './ui/spare-link-host';
14
- export { PaymentFlowPage, type PaymentFlowPageProps } from './ui/payment-flow-page';
15
- export { usePaymentFlowState } from './ui/hooks/use-payment-flow-state';
16
- export { BankSelectionScreen, type BankSelectionScreenProps, ConsentDetailsScreen, type ConsentDetailsScreenProps, RedirectHandoffScreen, ResumeProcessingScreen, type ResumeProcessingScreenProps, ResultScreen, type ResultScreenProps, MandateSetupSuccessScreen, type MandateSetupSuccessScreenProps, } from './ui/screens';
6
+ export type { PendingSessionRecord } from './core/models';
7
+ export { SpareLinkHost, type SpareLinkHostProps } from './ui/spare-link-host';
17
8
  export { Colors, Typography, Spacing, FONT_FAMILY } from './ui/theme';
18
- export { collectTelemetry, launchBankRedirect, type BankRedirectArgs, SecureStorePendingSessionStore, useSpareLinkDeepLinks, } from './internal';
9
+ export { launchBankRedirect, type BankRedirectArgs, SecureStorePendingSessionStore, useSpareLinkDeepLinks, } from './internal';
19
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGrF,YAAY,EACV,yBAAyB,EACzB,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,eAAe,CAAC;AAIvB,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAGzF,OAAO,EACL,qBAAqB,EACrB,KAAK,4BAA4B,EACjC,KAAK,KAAK,GACX,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,oCAAoC,CAAC;AAG5C,YAAY,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAGjF,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,EACpC,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,iBAAiB,GACvB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,aAAa,GACnB,MAAM,+CAA+C,CAAC;AAEvD,OAAO,EACL,cAAc,EACd,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,KAAK,gBAAgB,GACtB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,2BAA2B,EAChC,YAAY,EACZ,KAAK,iBAAiB,EACtB,yBAAyB,EACzB,KAAK,8BAA8B,GACpC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,cAAc,UAAU,CAAC;AAIzB,OAAO,EACL,KAAK,mBAAmB,EACxB,0BAA0B,EAC1B,iBAAiB,EACjB,6BAA6B,EAC7B,oCAAoC,EACpC,+BAA+B,EAC/B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,6BAA6B,EAC7B,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAO7C,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAG1F,YAAY,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtE,OAAO,EACL,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bank-redirect.d.ts","sourceRoot":"","sources":["../../../../src/internal/bank-redirect.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAcD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0B9E"}
1
+ {"version":3,"file":"bank-redirect.d.ts","sourceRoot":"","sources":["../../../../src/internal/bank-redirect.ts"],"names":[],"mappings":"AAuBA,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAcD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkC9E"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Messages the hosted payment page sends to this SDK.
3
+ *
4
+ * The contract is one-way. The page never waits on a reply, so a message this
5
+ * version does not recognise is dropped rather than treated as a failure — the
6
+ * page continues, and a newer page stays usable by an older app.
7
+ *
8
+ * The page posts to `window.ReactNativeWebView.postMessage` as a JSON string,
9
+ * which arrives here as `event.nativeEvent.data`.
10
+ */
11
+ export type HostedBridgeMessage = HostedReady | HostedOpenUrl | HostedCancel | HostedError;
12
+ /** The payable page is interactive. */
13
+ export interface HostedReady {
14
+ readonly type: 'ready';
15
+ }
16
+ /**
17
+ * A consent exists and the bank must now be opened outside the WebView.
18
+ *
19
+ * Banks commonly refuse to serve their authorization pages inside an embedded
20
+ * browser, and the address bar is what lets a payer tell a real bank page from
21
+ * a convincing copy.
22
+ */
23
+ export interface HostedOpenUrl {
24
+ readonly type: 'openUrl';
25
+ readonly url: string;
26
+ }
27
+ /** The payer cancelled, and the request is already rejected server-side. */
28
+ export interface HostedCancel {
29
+ readonly type: 'cancel';
30
+ }
31
+ /** The flow cannot continue. [code] is the key the page itself renders. */
32
+ export interface HostedError {
33
+ readonly type: 'error';
34
+ readonly code: string;
35
+ }
36
+ /**
37
+ * Parses a message posted by the hosted page.
38
+ *
39
+ * Returns null for anything unrecognised. The message crosses a boundary the
40
+ * SDK does not control, so nothing here trusts its shape — the WebView message
41
+ * channel is shared with every script on the page.
42
+ */
43
+ export declare function parseHostedBridgeMessage(raw: unknown): HostedBridgeMessage | null;
44
+ //# sourceMappingURL=bridge-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge-message.d.ts","sourceRoot":"","sources":["../../../../../src/internal/hosted/bridge-message.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,WAAW,CAAC;AAE3F,uCAAuC;AACvC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,4EAA4E;AAC5E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB;AAED,2EAA2E;AAC3E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB,GAAG,IAAI,CAyBjF"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Origin channel this SDK identifies as to the hosted page.
3
+ *
4
+ * The same value must be recorded on the payment request by the merchant's
5
+ * backend, because the bank redirect that completes a payment carries no query
6
+ * string of ours and the return path is decided from the stored row.
7
+ */
8
+ export declare const HOSTED_ORIGIN_CHANNEL = "sdk_react_native";
9
+ /**
10
+ * Builds the hosted payment page URL for a payment request reference.
11
+ *
12
+ * The reference is the only credential the page needs; everything else is
13
+ * resolved server-side from the row it names.
14
+ */
15
+ export declare function buildHostedPaymentUrl(args: {
16
+ baseUrl: string;
17
+ reference: string;
18
+ }): string;
19
+ /**
20
+ * Whether [url] belongs to the hosted origin derived from [baseUrl].
21
+ *
22
+ * The WebView loads only the hosted origin. Bank authentication deliberately
23
+ * happens outside it, so anything else navigating in-frame is refused rather
24
+ * than followed.
25
+ */
26
+ export declare function isHostedOriginUrl(args: {
27
+ baseUrl: string;
28
+ url: string;
29
+ }): boolean;
30
+ //# sourceMappingURL=hosted-url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-url.d.ts","sourceRoot":"","sources":["../../../../../src/internal/hosted/hosted-url.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAI1F;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAEjF"}
@@ -1,4 +1,3 @@
1
- export { collectTelemetry } from './telemetry-collector';
2
1
  export { launchBankRedirect, type BankRedirectArgs } from './bank-redirect';
3
2
  export { SecureStorePendingSessionStore } from './secure-store-pending-session-store';
4
3
  export { useSpareLinkDeepLinks } from './deep-link-listener';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,3 +1,23 @@
1
- /** Redacts sensitive query params before logging bank-return URIs. */
1
+ /**
2
+ * Redacts the query of a bank-return URI before it is logged.
3
+ *
4
+ * Every value goes except the few that describe the outcome rather than identify
5
+ * anyone — see {@link KEPT_KEYS}. Redaction is a denylist by default rather than
6
+ * an allowlist of names to remove: an earlier version named the two keys to
7
+ * redact, so anything else the return ever carried was logged in full, and one of
8
+ * the names it knew (`exchange_code`) is not even in the contract any more.
9
+ *
10
+ * What is worth keeping in a log is the shape of the URI — its scheme, its path,
11
+ * which parameters were present — plus enough to explain the outcome.
12
+ *
13
+ * It also cannot use the global `URL`. React Native's is a stub whose
14
+ * `searchParams` returns a fresh empty instance, so `has()` was always false and
15
+ * this function returned the URI untouched on a device while redacting correctly
16
+ * under Jest, which runs on Node.
17
+ *
18
+ * The query is split here rather than read through `parseQueryParams`, because
19
+ * that decodes values and keeps only the first of a repeated key — fine for
20
+ * reading an outcome, wrong for reproducing a URI whose shape is the point.
21
+ */
2
22
  export declare function redactPaymentReturnUri(uri: string): string;
3
23
  //# sourceMappingURL=redact-uri.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"redact-uri.d.ts","sourceRoot":"","sources":["../../../../src/internal/redact-uri.ts"],"names":[],"mappings":"AAEA,sEAAsE;AACtE,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAc1D"}
1
+ {"version":3,"file":"redact-uri.d.ts","sourceRoot":"","sources":["../../../../src/internal/redact-uri.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAmBH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgC1D"}