@spare-technologies/spare-link 0.1.0-beta.1 → 1.0.0

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 (561) 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/hosted/bridge-message.js +107 -0
  13. package/lib/commonjs/internal/hosted/bridge-message.js.map +1 -0
  14. package/lib/commonjs/internal/hosted/hosted-url.js +41 -0
  15. package/lib/commonjs/internal/hosted/hosted-url.js.map +1 -0
  16. package/lib/commonjs/internal/index.js +0 -7
  17. package/lib/commonjs/internal/index.js.map +1 -1
  18. package/lib/commonjs/internal/redact-uri.js +59 -15
  19. package/lib/commonjs/internal/redact-uri.js.map +1 -1
  20. package/lib/commonjs/internal/secure-store-pending-session-store.js +20 -25
  21. package/lib/commonjs/internal/secure-store-pending-session-store.js.map +1 -1
  22. package/lib/commonjs/internal/url-parts.js +145 -0
  23. package/lib/commonjs/internal/url-parts.js.map +1 -0
  24. package/lib/commonjs/public/index.js +0 -37
  25. package/lib/commonjs/public/index.js.map +1 -1
  26. package/lib/commonjs/public/payment-result.js +16 -4
  27. package/lib/commonjs/public/payment-result.js.map +1 -1
  28. package/lib/commonjs/public/recovery-result.js +7 -18
  29. package/lib/commonjs/public/recovery-result.js.map +1 -1
  30. package/lib/commonjs/public/spare-link-config.js +41 -16
  31. package/lib/commonjs/public/spare-link-config.js.map +1 -1
  32. package/lib/commonjs/public/spare-link-event.js +27 -33
  33. package/lib/commonjs/public/spare-link-event.js.map +1 -1
  34. package/lib/commonjs/public/spare-link-instance.js +67 -77
  35. package/lib/commonjs/public/spare-link-instance.js.map +1 -1
  36. package/lib/commonjs/public/spare-link-session.js +2 -9
  37. package/lib/commonjs/public/spare-link-session.js.map +1 -1
  38. package/lib/commonjs/public/spare-link.js +0 -12
  39. package/lib/commonjs/public/spare-link.js.map +1 -1
  40. package/lib/commonjs/ui/hooks/{use-payment-flow-state.js → use-hosted-flow-state.js} +4 -4
  41. package/lib/commonjs/ui/hooks/use-hosted-flow-state.js.map +1 -0
  42. package/lib/commonjs/ui/hosted/hosted-payment-page.js +177 -0
  43. package/lib/commonjs/ui/hosted/hosted-payment-page.js.map +1 -0
  44. package/lib/commonjs/ui/hosted/hosted-payment-webview.js +168 -0
  45. package/lib/commonjs/ui/hosted/hosted-payment-webview.js.map +1 -0
  46. package/lib/commonjs/ui/screens/index.js +3 -17
  47. package/lib/commonjs/ui/screens/index.js.map +1 -1
  48. package/lib/commonjs/ui/screens/page-unavailable-screen.js +101 -0
  49. package/lib/commonjs/ui/screens/page-unavailable-screen.js.map +1 -0
  50. package/lib/commonjs/ui/spare-link-host.js +220 -234
  51. package/lib/commonjs/ui/spare-link-host.js.map +1 -1
  52. package/lib/commonjs/ui/widgets/index.js +3 -10
  53. package/lib/commonjs/ui/widgets/index.js.map +1 -1
  54. package/lib/commonjs/version.js +1 -1
  55. package/lib/commonjs/version.js.map +1 -1
  56. package/lib/module/core/models/payment-return-params.js +235 -20
  57. package/lib/module/core/models/payment-return-params.js.map +1 -1
  58. package/lib/module/core/models/pending-session-record.js +2 -0
  59. package/lib/module/core/models/pending-session-record.js.map +1 -0
  60. package/lib/module/core/services/hosted-flow-controller.js +328 -0
  61. package/lib/module/core/services/hosted-flow-controller.js.map +1 -0
  62. package/lib/module/core/services/hosted-flow-state.js +91 -0
  63. package/lib/module/core/services/hosted-flow-state.js.map +1 -0
  64. package/lib/module/index.js +8 -22
  65. package/lib/module/index.js.map +1 -1
  66. package/lib/module/internal/hosted/bridge-message.js +104 -0
  67. package/lib/module/internal/hosted/bridge-message.js.map +1 -0
  68. package/lib/module/internal/hosted/hosted-url.js +36 -0
  69. package/lib/module/internal/hosted/hosted-url.js.map +1 -0
  70. package/lib/module/internal/index.js +0 -1
  71. package/lib/module/internal/index.js.map +1 -1
  72. package/lib/module/internal/redact-uri.js +59 -15
  73. package/lib/module/internal/redact-uri.js.map +1 -1
  74. package/lib/module/internal/secure-store-pending-session-store.js +20 -25
  75. package/lib/module/internal/secure-store-pending-session-store.js.map +1 -1
  76. package/lib/module/internal/url-parts.js +139 -0
  77. package/lib/module/internal/url-parts.js.map +1 -0
  78. package/lib/module/public/index.js +2 -3
  79. package/lib/module/public/index.js.map +1 -1
  80. package/lib/module/public/payment-result.js +16 -4
  81. package/lib/module/public/payment-result.js.map +1 -1
  82. package/lib/module/public/recovery-result.js +7 -17
  83. package/lib/module/public/recovery-result.js.map +1 -1
  84. package/lib/module/public/spare-link-config.js +42 -15
  85. package/lib/module/public/spare-link-config.js.map +1 -1
  86. package/lib/module/public/spare-link-event.js +27 -33
  87. package/lib/module/public/spare-link-event.js.map +1 -1
  88. package/lib/module/public/spare-link-instance.js +68 -72
  89. package/lib/module/public/spare-link-instance.js.map +1 -1
  90. package/lib/module/public/spare-link-session.js +2 -9
  91. package/lib/module/public/spare-link-session.js.map +1 -1
  92. package/lib/module/public/spare-link.js +1 -1
  93. package/lib/module/public/spare-link.js.map +1 -1
  94. package/lib/module/ui/hooks/{use-payment-flow-state.js → use-hosted-flow-state.js} +3 -3
  95. package/lib/module/ui/hooks/use-hosted-flow-state.js.map +1 -0
  96. package/lib/module/ui/hosted/hosted-payment-page.js +175 -0
  97. package/lib/module/ui/hosted/hosted-payment-page.js.map +1 -0
  98. package/lib/module/ui/hosted/hosted-payment-webview.js +163 -0
  99. package/lib/module/ui/hosted/hosted-payment-webview.js.map +1 -0
  100. package/lib/module/ui/screens/index.js +1 -3
  101. package/lib/module/ui/screens/index.js.map +1 -1
  102. package/lib/module/ui/screens/page-unavailable-screen.js +97 -0
  103. package/lib/module/ui/screens/page-unavailable-screen.js.map +1 -0
  104. package/lib/module/ui/spare-link-host.js +221 -236
  105. package/lib/module/ui/spare-link-host.js.map +1 -1
  106. package/lib/module/ui/widgets/index.js +1 -2
  107. package/lib/module/ui/widgets/index.js.map +1 -1
  108. package/lib/module/version.js +1 -1
  109. package/lib/module/version.js.map +1 -1
  110. package/lib/typescript/commonjs/core/models/index.d.ts +1 -123
  111. package/lib/typescript/commonjs/core/models/index.d.ts.map +1 -1
  112. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts +91 -8
  113. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts.map +1 -1
  114. package/lib/typescript/commonjs/core/models/pending-session-record.d.ts +11 -0
  115. package/lib/typescript/commonjs/core/models/pending-session-record.d.ts.map +1 -0
  116. package/lib/typescript/commonjs/core/services/hosted-flow-controller.d.ts +119 -0
  117. package/lib/typescript/commonjs/core/services/hosted-flow-controller.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/core/services/hosted-flow-state.d.ts +75 -0
  119. package/lib/typescript/commonjs/core/services/hosted-flow-state.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/index.d.ts +5 -14
  121. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  122. package/lib/typescript/commonjs/internal/hosted/bridge-message.d.ts +44 -0
  123. package/lib/typescript/commonjs/internal/hosted/bridge-message.d.ts.map +1 -0
  124. package/lib/typescript/commonjs/internal/hosted/hosted-url.d.ts +30 -0
  125. package/lib/typescript/commonjs/internal/hosted/hosted-url.d.ts.map +1 -0
  126. package/lib/typescript/commonjs/internal/index.d.ts +0 -1
  127. package/lib/typescript/commonjs/internal/index.d.ts.map +1 -1
  128. package/lib/typescript/commonjs/internal/redact-uri.d.ts +21 -1
  129. package/lib/typescript/commonjs/internal/redact-uri.d.ts.map +1 -1
  130. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts +3 -2
  131. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/internal/url-parts.d.ts +46 -0
  133. package/lib/typescript/commonjs/internal/url-parts.d.ts.map +1 -0
  134. package/lib/typescript/commonjs/public/index.d.ts +4 -6
  135. package/lib/typescript/commonjs/public/index.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/public/payment-result.d.ts +50 -12
  137. package/lib/typescript/commonjs/public/payment-result.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/public/recovery-result.d.ts +11 -20
  139. package/lib/typescript/commonjs/public/recovery-result.d.ts.map +1 -1
  140. package/lib/typescript/commonjs/public/spare-link-config.d.ts +13 -31
  141. package/lib/typescript/commonjs/public/spare-link-config.d.ts.map +1 -1
  142. package/lib/typescript/commonjs/public/spare-link-event.d.ts +29 -31
  143. package/lib/typescript/commonjs/public/spare-link-event.d.ts.map +1 -1
  144. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts +1 -12
  145. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts.map +1 -1
  146. package/lib/typescript/commonjs/public/spare-link-instance.d.ts +26 -20
  147. package/lib/typescript/commonjs/public/spare-link-instance.d.ts.map +1 -1
  148. package/lib/typescript/commonjs/public/spare-link-session.d.ts +3 -8
  149. package/lib/typescript/commonjs/public/spare-link-session.d.ts.map +1 -1
  150. package/lib/typescript/commonjs/public/spare-link.d.ts +1 -1
  151. package/lib/typescript/commonjs/public/spare-link.d.ts.map +1 -1
  152. package/lib/typescript/commonjs/ui/hooks/use-hosted-flow-state.d.ts +9 -0
  153. package/lib/typescript/commonjs/ui/hooks/use-hosted-flow-state.d.ts.map +1 -0
  154. package/lib/typescript/commonjs/ui/hosted/hosted-payment-page.d.ts +17 -0
  155. package/lib/typescript/commonjs/ui/hosted/hosted-payment-page.d.ts.map +1 -0
  156. package/lib/typescript/commonjs/ui/hosted/hosted-payment-webview.d.ts +43 -0
  157. package/lib/typescript/commonjs/ui/hosted/hosted-payment-webview.d.ts.map +1 -0
  158. package/lib/typescript/commonjs/ui/screens/index.d.ts +1 -3
  159. package/lib/typescript/commonjs/ui/screens/index.d.ts.map +1 -1
  160. package/lib/typescript/commonjs/ui/screens/page-unavailable-screen.d.ts +18 -0
  161. package/lib/typescript/commonjs/ui/screens/page-unavailable-screen.d.ts.map +1 -0
  162. package/lib/typescript/commonjs/ui/spare-link-host.d.ts +4 -5
  163. package/lib/typescript/commonjs/ui/spare-link-host.d.ts.map +1 -1
  164. package/lib/typescript/commonjs/ui/widgets/index.d.ts +1 -2
  165. package/lib/typescript/commonjs/ui/widgets/index.d.ts.map +1 -1
  166. package/lib/typescript/commonjs/version.d.ts +1 -1
  167. package/lib/typescript/commonjs/version.d.ts.map +1 -1
  168. package/lib/typescript/module/core/models/index.d.ts +1 -123
  169. package/lib/typescript/module/core/models/index.d.ts.map +1 -1
  170. package/lib/typescript/module/core/models/payment-return-params.d.ts +91 -8
  171. package/lib/typescript/module/core/models/payment-return-params.d.ts.map +1 -1
  172. package/lib/typescript/module/core/models/pending-session-record.d.ts +11 -0
  173. package/lib/typescript/module/core/models/pending-session-record.d.ts.map +1 -0
  174. package/lib/typescript/module/core/services/hosted-flow-controller.d.ts +119 -0
  175. package/lib/typescript/module/core/services/hosted-flow-controller.d.ts.map +1 -0
  176. package/lib/typescript/module/core/services/hosted-flow-state.d.ts +75 -0
  177. package/lib/typescript/module/core/services/hosted-flow-state.d.ts.map +1 -0
  178. package/lib/typescript/module/index.d.ts +5 -14
  179. package/lib/typescript/module/index.d.ts.map +1 -1
  180. package/lib/typescript/module/internal/hosted/bridge-message.d.ts +44 -0
  181. package/lib/typescript/module/internal/hosted/bridge-message.d.ts.map +1 -0
  182. package/lib/typescript/module/internal/hosted/hosted-url.d.ts +30 -0
  183. package/lib/typescript/module/internal/hosted/hosted-url.d.ts.map +1 -0
  184. package/lib/typescript/module/internal/index.d.ts +0 -1
  185. package/lib/typescript/module/internal/index.d.ts.map +1 -1
  186. package/lib/typescript/module/internal/redact-uri.d.ts +21 -1
  187. package/lib/typescript/module/internal/redact-uri.d.ts.map +1 -1
  188. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts +3 -2
  189. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts.map +1 -1
  190. package/lib/typescript/module/internal/url-parts.d.ts +46 -0
  191. package/lib/typescript/module/internal/url-parts.d.ts.map +1 -0
  192. package/lib/typescript/module/public/index.d.ts +4 -6
  193. package/lib/typescript/module/public/index.d.ts.map +1 -1
  194. package/lib/typescript/module/public/payment-result.d.ts +50 -12
  195. package/lib/typescript/module/public/payment-result.d.ts.map +1 -1
  196. package/lib/typescript/module/public/recovery-result.d.ts +11 -20
  197. package/lib/typescript/module/public/recovery-result.d.ts.map +1 -1
  198. package/lib/typescript/module/public/spare-link-config.d.ts +13 -31
  199. package/lib/typescript/module/public/spare-link-config.d.ts.map +1 -1
  200. package/lib/typescript/module/public/spare-link-event.d.ts +29 -31
  201. package/lib/typescript/module/public/spare-link-event.d.ts.map +1 -1
  202. package/lib/typescript/module/public/spare-link-host-api.d.ts +1 -12
  203. package/lib/typescript/module/public/spare-link-host-api.d.ts.map +1 -1
  204. package/lib/typescript/module/public/spare-link-instance.d.ts +26 -20
  205. package/lib/typescript/module/public/spare-link-instance.d.ts.map +1 -1
  206. package/lib/typescript/module/public/spare-link-session.d.ts +3 -8
  207. package/lib/typescript/module/public/spare-link-session.d.ts.map +1 -1
  208. package/lib/typescript/module/public/spare-link.d.ts +1 -1
  209. package/lib/typescript/module/public/spare-link.d.ts.map +1 -1
  210. package/lib/typescript/module/ui/hooks/use-hosted-flow-state.d.ts +9 -0
  211. package/lib/typescript/module/ui/hooks/use-hosted-flow-state.d.ts.map +1 -0
  212. package/lib/typescript/module/ui/hosted/hosted-payment-page.d.ts +17 -0
  213. package/lib/typescript/module/ui/hosted/hosted-payment-page.d.ts.map +1 -0
  214. package/lib/typescript/module/ui/hosted/hosted-payment-webview.d.ts +43 -0
  215. package/lib/typescript/module/ui/hosted/hosted-payment-webview.d.ts.map +1 -0
  216. package/lib/typescript/module/ui/screens/index.d.ts +1 -3
  217. package/lib/typescript/module/ui/screens/index.d.ts.map +1 -1
  218. package/lib/typescript/module/ui/screens/page-unavailable-screen.d.ts +18 -0
  219. package/lib/typescript/module/ui/screens/page-unavailable-screen.d.ts.map +1 -0
  220. package/lib/typescript/module/ui/spare-link-host.d.ts +4 -5
  221. package/lib/typescript/module/ui/spare-link-host.d.ts.map +1 -1
  222. package/lib/typescript/module/ui/widgets/index.d.ts +1 -2
  223. package/lib/typescript/module/ui/widgets/index.d.ts.map +1 -1
  224. package/lib/typescript/module/version.d.ts +1 -1
  225. package/lib/typescript/module/version.d.ts.map +1 -1
  226. package/package.json +24 -22
  227. package/plugins/with-spare-link.js +6 -26
  228. package/src/core/models/index.ts +1 -139
  229. package/src/core/models/payment-return-params.ts +269 -21
  230. package/src/core/models/pending-session-record.ts +10 -0
  231. package/src/core/services/hosted-flow-controller.ts +374 -0
  232. package/src/core/services/hosted-flow-state.ts +123 -0
  233. package/src/index.ts +20 -89
  234. package/src/internal/hosted/bridge-message.ts +106 -0
  235. package/src/internal/hosted/hosted-url.ts +33 -0
  236. package/src/internal/index.ts +0 -1
  237. package/src/internal/redact-uri.ts +69 -15
  238. package/src/internal/secure-store-pending-session-store.ts +28 -49
  239. package/src/internal/url-parts.ts +134 -0
  240. package/src/public/index.ts +2 -24
  241. package/src/public/payment-result.ts +50 -12
  242. package/src/public/recovery-result.ts +16 -25
  243. package/src/public/spare-link-config.ts +56 -43
  244. package/src/public/spare-link-event.ts +33 -42
  245. package/src/public/spare-link-host-api.ts +1 -14
  246. package/src/public/spare-link-instance.ts +57 -65
  247. package/src/public/spare-link-session.ts +4 -16
  248. package/src/public/spare-link.ts +1 -1
  249. package/src/ui/hooks/use-hosted-flow-state.ts +16 -0
  250. package/src/ui/hosted/hosted-payment-page.tsx +178 -0
  251. package/src/ui/hosted/hosted-payment-webview.tsx +164 -0
  252. package/src/ui/screens/index.ts +4 -6
  253. package/src/ui/screens/page-unavailable-screen.tsx +94 -0
  254. package/src/ui/spare-link-host.tsx +227 -247
  255. package/src/ui/widgets/index.ts +1 -2
  256. package/src/version.ts +1 -1
  257. package/CHANGELOG.md +0 -25
  258. package/lib/commonjs/core/client/link-api-client.js +0 -297
  259. package/lib/commonjs/core/client/link-api-client.js.map +0 -1
  260. package/lib/commonjs/core/errors/payment-api-error.js +0 -35
  261. package/lib/commonjs/core/errors/payment-api-error.js.map +0 -1
  262. package/lib/commonjs/core/models/link-session-status.js +0 -14
  263. package/lib/commonjs/core/models/link-session-status.js.map +0 -1
  264. package/lib/commonjs/core/models/payment-type.js +0 -45
  265. package/lib/commonjs/core/models/payment-type.js.map +0 -1
  266. package/lib/commonjs/core/models/wire-mappers.js +0 -277
  267. package/lib/commonjs/core/models/wire-mappers.js.map +0 -1
  268. package/lib/commonjs/core/services/consent-presenter.js +0 -150
  269. package/lib/commonjs/core/services/consent-presenter.js.map +0 -1
  270. package/lib/commonjs/core/services/execute-resume-if-needed.js +0 -216
  271. package/lib/commonjs/core/services/execute-resume-if-needed.js.map +0 -1
  272. package/lib/commonjs/core/services/multi-payment-rules-presenter.js +0 -151
  273. package/lib/commonjs/core/services/multi-payment-rules-presenter.js.map +0 -1
  274. package/lib/commonjs/core/services/payment-flow-controller.js +0 -547
  275. package/lib/commonjs/core/services/payment-flow-controller.js.map +0 -1
  276. package/lib/commonjs/core/services/payment-flow-state.js +0 -110
  277. package/lib/commonjs/core/services/payment-flow-state.js.map +0 -1
  278. package/lib/commonjs/core/services/payment-result-mapper.js +0 -49
  279. package/lib/commonjs/core/services/payment-result-mapper.js.map +0 -1
  280. package/lib/commonjs/core/services/presentation-utils.js +0 -11
  281. package/lib/commonjs/core/services/presentation-utils.js.map +0 -1
  282. package/lib/commonjs/core/services/redirect-buffer.js +0 -40
  283. package/lib/commonjs/core/services/redirect-buffer.js.map +0 -1
  284. package/lib/commonjs/core/services/user-friendly-messages.js +0 -46
  285. package/lib/commonjs/core/services/user-friendly-messages.js.map +0 -1
  286. package/lib/commonjs/internal/telemetry-collector.js +0 -80
  287. package/lib/commonjs/internal/telemetry-collector.js.map +0 -1
  288. package/lib/commonjs/public/constants.js +0 -21
  289. package/lib/commonjs/public/constants.js.map +0 -1
  290. package/lib/commonjs/public/spare-link-callbacks.js +0 -6
  291. package/lib/commonjs/public/spare-link-callbacks.js.map +0 -1
  292. package/lib/commonjs/ui/consent/charge-bearer-display.js +0 -99
  293. package/lib/commonjs/ui/consent/charge-bearer-display.js.map +0 -1
  294. package/lib/commonjs/ui/consent/consent-accordion.js +0 -94
  295. package/lib/commonjs/ui/consent/consent-accordion.js.map +0 -1
  296. package/lib/commonjs/ui/consent/consent-summary-section.js +0 -27
  297. package/lib/commonjs/ui/consent/consent-summary-section.js.map +0 -1
  298. package/lib/commonjs/ui/consent/cop-information.js +0 -168
  299. package/lib/commonjs/ui/consent/cop-information.js.map +0 -1
  300. package/lib/commonjs/ui/consent/international-payment-summary.js +0 -98
  301. package/lib/commonjs/ui/consent/international-payment-summary.js.map +0 -1
  302. package/lib/commonjs/ui/consent/label-value-rows.js +0 -59
  303. package/lib/commonjs/ui/consent/label-value-rows.js.map +0 -1
  304. package/lib/commonjs/ui/consent/multi-payment-rules-list.js +0 -130
  305. package/lib/commonjs/ui/consent/multi-payment-rules-list.js.map +0 -1
  306. package/lib/commonjs/ui/consent/multi-payment-summary.js +0 -99
  307. package/lib/commonjs/ui/consent/multi-payment-summary.js.map +0 -1
  308. package/lib/commonjs/ui/consent/single-payment-summary.js +0 -158
  309. package/lib/commonjs/ui/consent/single-payment-summary.js.map +0 -1
  310. package/lib/commonjs/ui/consent/terms-link.js +0 -35
  311. package/lib/commonjs/ui/consent/terms-link.js.map +0 -1
  312. package/lib/commonjs/ui/hooks/use-payment-flow-state.js.map +0 -1
  313. package/lib/commonjs/ui/payment-flow-page.js +0 -235
  314. package/lib/commonjs/ui/payment-flow-page.js.map +0 -1
  315. package/lib/commonjs/ui/screens/bank-selection-screen.js +0 -215
  316. package/lib/commonjs/ui/screens/bank-selection-screen.js.map +0 -1
  317. package/lib/commonjs/ui/screens/consent-details-screen.js +0 -124
  318. package/lib/commonjs/ui/screens/consent-details-screen.js.map +0 -1
  319. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js +0 -79
  320. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js.map +0 -1
  321. package/lib/commonjs/ui/widgets/layout-w-header.js +0 -106
  322. package/lib/commonjs/ui/widgets/layout-w-header.js.map +0 -1
  323. package/lib/commonjs/ui/widgets/stepper.js +0 -124
  324. package/lib/commonjs/ui/widgets/stepper.js.map +0 -1
  325. package/lib/module/core/client/link-api-client.js +0 -292
  326. package/lib/module/core/client/link-api-client.js.map +0 -1
  327. package/lib/module/core/errors/payment-api-error.js +0 -29
  328. package/lib/module/core/errors/payment-api-error.js.map +0 -1
  329. package/lib/module/core/models/link-session-status.js +0 -10
  330. package/lib/module/core/models/link-session-status.js.map +0 -1
  331. package/lib/module/core/models/payment-type.js +0 -36
  332. package/lib/module/core/models/payment-type.js.map +0 -1
  333. package/lib/module/core/models/wire-mappers.js +0 -263
  334. package/lib/module/core/models/wire-mappers.js.map +0 -1
  335. package/lib/module/core/services/consent-presenter.js +0 -140
  336. package/lib/module/core/services/consent-presenter.js.map +0 -1
  337. package/lib/module/core/services/execute-resume-if-needed.js +0 -211
  338. package/lib/module/core/services/execute-resume-if-needed.js.map +0 -1
  339. package/lib/module/core/services/multi-payment-rules-presenter.js +0 -146
  340. package/lib/module/core/services/multi-payment-rules-presenter.js.map +0 -1
  341. package/lib/module/core/services/payment-flow-controller.js +0 -544
  342. package/lib/module/core/services/payment-flow-controller.js.map +0 -1
  343. package/lib/module/core/services/payment-flow-state.js +0 -106
  344. package/lib/module/core/services/payment-flow-state.js.map +0 -1
  345. package/lib/module/core/services/payment-result-mapper.js +0 -45
  346. package/lib/module/core/services/payment-result-mapper.js.map +0 -1
  347. package/lib/module/core/services/presentation-utils.js +0 -7
  348. package/lib/module/core/services/presentation-utils.js.map +0 -1
  349. package/lib/module/core/services/redirect-buffer.js +0 -33
  350. package/lib/module/core/services/redirect-buffer.js.map +0 -1
  351. package/lib/module/core/services/user-friendly-messages.js +0 -42
  352. package/lib/module/core/services/user-friendly-messages.js.map +0 -1
  353. package/lib/module/internal/telemetry-collector.js +0 -75
  354. package/lib/module/internal/telemetry-collector.js.map +0 -1
  355. package/lib/module/public/constants.js +0 -17
  356. package/lib/module/public/constants.js.map +0 -1
  357. package/lib/module/public/spare-link-callbacks.js +0 -4
  358. package/lib/module/public/spare-link-callbacks.js.map +0 -1
  359. package/lib/module/ui/consent/charge-bearer-display.js +0 -95
  360. package/lib/module/ui/consent/charge-bearer-display.js.map +0 -1
  361. package/lib/module/ui/consent/consent-accordion.js +0 -90
  362. package/lib/module/ui/consent/consent-accordion.js.map +0 -1
  363. package/lib/module/ui/consent/consent-summary-section.js +0 -23
  364. package/lib/module/ui/consent/consent-summary-section.js.map +0 -1
  365. package/lib/module/ui/consent/cop-information.js +0 -165
  366. package/lib/module/ui/consent/cop-information.js.map +0 -1
  367. package/lib/module/ui/consent/international-payment-summary.js +0 -94
  368. package/lib/module/ui/consent/international-payment-summary.js.map +0 -1
  369. package/lib/module/ui/consent/label-value-rows.js +0 -55
  370. package/lib/module/ui/consent/label-value-rows.js.map +0 -1
  371. package/lib/module/ui/consent/multi-payment-rules-list.js +0 -125
  372. package/lib/module/ui/consent/multi-payment-rules-list.js.map +0 -1
  373. package/lib/module/ui/consent/multi-payment-summary.js +0 -95
  374. package/lib/module/ui/consent/multi-payment-summary.js.map +0 -1
  375. package/lib/module/ui/consent/single-payment-summary.js +0 -154
  376. package/lib/module/ui/consent/single-payment-summary.js.map +0 -1
  377. package/lib/module/ui/consent/terms-link.js +0 -31
  378. package/lib/module/ui/consent/terms-link.js.map +0 -1
  379. package/lib/module/ui/hooks/use-payment-flow-state.js.map +0 -1
  380. package/lib/module/ui/payment-flow-page.js +0 -232
  381. package/lib/module/ui/payment-flow-page.js.map +0 -1
  382. package/lib/module/ui/screens/bank-selection-screen.js +0 -211
  383. package/lib/module/ui/screens/bank-selection-screen.js.map +0 -1
  384. package/lib/module/ui/screens/consent-details-screen.js +0 -120
  385. package/lib/module/ui/screens/consent-details-screen.js.map +0 -1
  386. package/lib/module/ui/screens/mandate-setup-success-screen.js +0 -75
  387. package/lib/module/ui/screens/mandate-setup-success-screen.js.map +0 -1
  388. package/lib/module/ui/widgets/layout-w-header.js +0 -102
  389. package/lib/module/ui/widgets/layout-w-header.js.map +0 -1
  390. package/lib/module/ui/widgets/stepper.js +0 -120
  391. package/lib/module/ui/widgets/stepper.js.map +0 -1
  392. package/lib/typescript/commonjs/core/client/link-api-client.d.ts +0 -70
  393. package/lib/typescript/commonjs/core/client/link-api-client.d.ts.map +0 -1
  394. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts +0 -15
  395. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts.map +0 -1
  396. package/lib/typescript/commonjs/core/models/link-session-status.d.ts +0 -6
  397. package/lib/typescript/commonjs/core/models/link-session-status.d.ts.map +0 -1
  398. package/lib/typescript/commonjs/core/models/payment-type.d.ts +0 -18
  399. package/lib/typescript/commonjs/core/models/payment-type.d.ts.map +0 -1
  400. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts +0 -19
  401. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts.map +0 -1
  402. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts +0 -67
  403. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts.map +0 -1
  404. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts +0 -32
  405. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts.map +0 -1
  406. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts +0 -9
  407. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts.map +0 -1
  408. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts +0 -146
  409. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts.map +0 -1
  410. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts +0 -64
  411. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts.map +0 -1
  412. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts +0 -5
  413. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts.map +0 -1
  414. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts +0 -5
  415. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts.map +0 -1
  416. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts +0 -6
  417. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts.map +0 -1
  418. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts +0 -6
  419. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts.map +0 -1
  420. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts +0 -2
  421. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts.map +0 -1
  422. package/lib/typescript/commonjs/public/constants.d.ts +0 -12
  423. package/lib/typescript/commonjs/public/constants.d.ts.map +0 -1
  424. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts +0 -14
  425. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts.map +0 -1
  426. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts +0 -5
  427. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts.map +0 -1
  428. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts +0 -10
  429. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts.map +0 -1
  430. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts +0 -6
  431. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts.map +0 -1
  432. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts +0 -6
  433. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts.map +0 -1
  434. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts +0 -6
  435. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts.map +0 -1
  436. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts +0 -10
  437. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts.map +0 -1
  438. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts +0 -15
  439. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts.map +0 -1
  440. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts +0 -6
  441. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts.map +0 -1
  442. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts +0 -6
  443. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts.map +0 -1
  444. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts +0 -2
  445. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts.map +0 -1
  446. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts +0 -9
  447. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts.map +0 -1
  448. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts +0 -20
  449. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts.map +0 -1
  450. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts +0 -15
  451. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts.map +0 -1
  452. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts +0 -13
  453. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts.map +0 -1
  454. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts +0 -10
  455. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts.map +0 -1
  456. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts +0 -20
  457. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts.map +0 -1
  458. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts +0 -15
  459. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts.map +0 -1
  460. package/lib/typescript/module/core/client/link-api-client.d.ts +0 -70
  461. package/lib/typescript/module/core/client/link-api-client.d.ts.map +0 -1
  462. package/lib/typescript/module/core/errors/payment-api-error.d.ts +0 -15
  463. package/lib/typescript/module/core/errors/payment-api-error.d.ts.map +0 -1
  464. package/lib/typescript/module/core/models/link-session-status.d.ts +0 -6
  465. package/lib/typescript/module/core/models/link-session-status.d.ts.map +0 -1
  466. package/lib/typescript/module/core/models/payment-type.d.ts +0 -18
  467. package/lib/typescript/module/core/models/payment-type.d.ts.map +0 -1
  468. package/lib/typescript/module/core/models/wire-mappers.d.ts +0 -19
  469. package/lib/typescript/module/core/models/wire-mappers.d.ts.map +0 -1
  470. package/lib/typescript/module/core/services/consent-presenter.d.ts +0 -67
  471. package/lib/typescript/module/core/services/consent-presenter.d.ts.map +0 -1
  472. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts +0 -32
  473. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts.map +0 -1
  474. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts +0 -9
  475. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts.map +0 -1
  476. package/lib/typescript/module/core/services/payment-flow-controller.d.ts +0 -146
  477. package/lib/typescript/module/core/services/payment-flow-controller.d.ts.map +0 -1
  478. package/lib/typescript/module/core/services/payment-flow-state.d.ts +0 -64
  479. package/lib/typescript/module/core/services/payment-flow-state.d.ts.map +0 -1
  480. package/lib/typescript/module/core/services/payment-result-mapper.d.ts +0 -5
  481. package/lib/typescript/module/core/services/payment-result-mapper.d.ts.map +0 -1
  482. package/lib/typescript/module/core/services/presentation-utils.d.ts +0 -5
  483. package/lib/typescript/module/core/services/presentation-utils.d.ts.map +0 -1
  484. package/lib/typescript/module/core/services/redirect-buffer.d.ts +0 -6
  485. package/lib/typescript/module/core/services/redirect-buffer.d.ts.map +0 -1
  486. package/lib/typescript/module/core/services/user-friendly-messages.d.ts +0 -6
  487. package/lib/typescript/module/core/services/user-friendly-messages.d.ts.map +0 -1
  488. package/lib/typescript/module/internal/telemetry-collector.d.ts +0 -2
  489. package/lib/typescript/module/internal/telemetry-collector.d.ts.map +0 -1
  490. package/lib/typescript/module/public/constants.d.ts +0 -12
  491. package/lib/typescript/module/public/constants.d.ts.map +0 -1
  492. package/lib/typescript/module/public/spare-link-callbacks.d.ts +0 -14
  493. package/lib/typescript/module/public/spare-link-callbacks.d.ts.map +0 -1
  494. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts +0 -5
  495. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts.map +0 -1
  496. package/lib/typescript/module/ui/consent/consent-accordion.d.ts +0 -10
  497. package/lib/typescript/module/ui/consent/consent-accordion.d.ts.map +0 -1
  498. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts +0 -6
  499. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts.map +0 -1
  500. package/lib/typescript/module/ui/consent/cop-information.d.ts +0 -6
  501. package/lib/typescript/module/ui/consent/cop-information.d.ts.map +0 -1
  502. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts +0 -6
  503. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts.map +0 -1
  504. package/lib/typescript/module/ui/consent/label-value-rows.d.ts +0 -10
  505. package/lib/typescript/module/ui/consent/label-value-rows.d.ts.map +0 -1
  506. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts +0 -15
  507. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts.map +0 -1
  508. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts +0 -6
  509. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts.map +0 -1
  510. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts +0 -6
  511. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts.map +0 -1
  512. package/lib/typescript/module/ui/consent/terms-link.d.ts +0 -2
  513. package/lib/typescript/module/ui/consent/terms-link.d.ts.map +0 -1
  514. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts +0 -9
  515. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts.map +0 -1
  516. package/lib/typescript/module/ui/payment-flow-page.d.ts +0 -20
  517. package/lib/typescript/module/ui/payment-flow-page.d.ts.map +0 -1
  518. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts +0 -15
  519. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts.map +0 -1
  520. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts +0 -13
  521. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts.map +0 -1
  522. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts +0 -10
  523. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts.map +0 -1
  524. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts +0 -20
  525. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts.map +0 -1
  526. package/lib/typescript/module/ui/widgets/stepper.d.ts +0 -15
  527. package/lib/typescript/module/ui/widgets/stepper.d.ts.map +0 -1
  528. package/src/core/client/link-api-client.ts +0 -414
  529. package/src/core/errors/payment-api-error.ts +0 -35
  530. package/src/core/models/link-session-status.ts +0 -7
  531. package/src/core/models/payment-type.ts +0 -54
  532. package/src/core/models/wire-mappers.ts +0 -315
  533. package/src/core/services/consent-presenter.ts +0 -213
  534. package/src/core/services/execute-resume-if-needed.ts +0 -243
  535. package/src/core/services/multi-payment-rules-presenter.ts +0 -158
  536. package/src/core/services/payment-flow-controller.ts +0 -607
  537. package/src/core/services/payment-flow-state.ts +0 -124
  538. package/src/core/services/payment-result-mapper.ts +0 -41
  539. package/src/core/services/presentation-utils.ts +0 -4
  540. package/src/core/services/redirect-buffer.ts +0 -34
  541. package/src/core/services/user-friendly-messages.ts +0 -39
  542. package/src/internal/telemetry-collector.ts +0 -90
  543. package/src/public/constants.ts +0 -14
  544. package/src/public/spare-link-callbacks.ts +0 -20
  545. package/src/ui/consent/charge-bearer-display.tsx +0 -68
  546. package/src/ui/consent/consent-accordion.tsx +0 -89
  547. package/src/ui/consent/consent-summary-section.tsx +0 -19
  548. package/src/ui/consent/cop-information.tsx +0 -121
  549. package/src/ui/consent/international-payment-summary.tsx +0 -83
  550. package/src/ui/consent/label-value-rows.tsx +0 -50
  551. package/src/ui/consent/multi-payment-rules-list.tsx +0 -138
  552. package/src/ui/consent/multi-payment-summary.tsx +0 -82
  553. package/src/ui/consent/single-payment-summary.tsx +0 -123
  554. package/src/ui/consent/terms-link.tsx +0 -27
  555. package/src/ui/hooks/use-payment-flow-state.ts +0 -16
  556. package/src/ui/payment-flow-page.tsx +0 -254
  557. package/src/ui/screens/bank-selection-screen.tsx +0 -209
  558. package/src/ui/screens/consent-details-screen.tsx +0 -106
  559. package/src/ui/screens/mandate-setup-success-screen.tsx +0 -72
  560. package/src/ui/widgets/layout-w-header.tsx +0 -89
  561. package/src/ui/widgets/stepper.tsx +0 -126
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SCHEME_AND_AUTHORITY","DEFAULT_PORTS","http","https","parseUrlParts","url","match","exec","trim","undefined","scheme","toLowerCase","authority","slice","lastIndexOf","hostAndPort","splitHostAndPort","host","portText","length","port","test","Number","parseInt","isSameOrigin","a","b","left","right","parseQueryParams","params","start","indexOf","fragment","query","pair","split","eq","rawKey","rawValue","key","decodeFormComponent","Object","hasOwn","startsWith","close","rest","colon","value","plusesAsSpaces","replace","decodeURIComponent"],"sourceRoot":"../../../src","sources":["internal/url-parts.ts"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
 
3
- export { defaultBaseUrlFor, tenantCountryCode, resolvedBaseUrl, resolvedResumeBaseUrl, assertValidConfig } from "./spare-link-config.js";
3
+ export { defaultBaseUrlFor, tenantCountryCode, resolvedBaseUrl, assertValidConfig } from "./spare-link-config.js";
4
4
  export { SPARE_LINK_EVENT_TYPES, isSpareLinkEvent, SpareLinkEvents } from "./spare-link-event.js";
5
5
  export { paymentSuccess, paymentCancelled, paymentFailed, paymentAbandoned } from "./payment-result.js";
6
- export { isSessionRecovered, isNoRecoveryNeeded, isRecoveryAwaitingUser } from "./recovery-result.js";
6
+ export { isSessionRecovered, isNoRecoveryNeeded } from "./recovery-result.js";
7
7
  export { SpareLinkSession } from "./spare-link-session.js";
8
8
  export { SpareLink } from "./spare-link-instance.js";
9
- export { kMaxRecoveryAttempts, DEFAULT_REQUEST_TIMEOUT_MS, DEFAULT_AWAITING_CALLBACK_TIMEOUT_MS, DEFAULT_AWAITING_CALLBACK_POLL_MS } from "./constants.js";
10
9
  export { configureSpareLinkLogging, createLogger } from "../internal/logger.js";
11
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["defaultBaseUrlFor","tenantCountryCode","resolvedBaseUrl","resolvedResumeBaseUrl","assertValidConfig","SPARE_LINK_EVENT_TYPES","isSpareLinkEvent","SpareLinkEvents","paymentSuccess","paymentCancelled","paymentFailed","paymentAbandoned","isSessionRecovered","isNoRecoveryNeeded","isRecoveryAwaitingUser","SpareLinkSession","SpareLink","kMaxRecoveryAttempts","DEFAULT_REQUEST_TIMEOUT_MS","DEFAULT_AWAITING_CALLBACK_TIMEOUT_MS","DEFAULT_AWAITING_CALLBACK_POLL_MS","configureSpareLinkLogging","createLogger"],"sourceRoot":"../../../src","sources":["public/index.ts"],"mappings":";;AAAA,SAKEA,iBAAiB,EACjBC,iBAAiB,EACjBC,eAAe,EACfC,qBAAqB,EACrBC,iBAAiB,QACZ,wBAAqB;AAE5B,SAYEC,sBAAsB,EACtBC,gBAAgB,EAChBC,eAAe,QACV,uBAAoB;AAE3B,SAOEC,cAAc,EACdC,gBAAgB,EAChBC,aAAa,EACbC,gBAAgB,QACX,qBAAkB;AAgBzB,SACEC,kBAAkB,EAClBC,kBAAkB,EAClBC,sBAAsB,QACjB,sBAAmB;AAE1B,SAASC,gBAAgB,QAAQ,yBAAsB;AACvD,SAASC,SAAS,QAA+B,0BAAuB;AAExE,SACEC,oBAAoB,EACpBC,0BAA0B,EAC1BC,oCAAoC,EACpCC,iCAAiC,QAC5B,gBAAa;AAEpB,SACEC,yBAAyB,EACzBC,YAAY,QAKP,uBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["defaultBaseUrlFor","tenantCountryCode","resolvedBaseUrl","assertValidConfig","SPARE_LINK_EVENT_TYPES","isSpareLinkEvent","SpareLinkEvents","paymentSuccess","paymentCancelled","paymentFailed","paymentAbandoned","isSessionRecovered","isNoRecoveryNeeded","SpareLinkSession","SpareLink","configureSpareLinkLogging","createLogger"],"sourceRoot":"../../../src","sources":["public/index.ts"],"mappings":";;AAAA,SAIEA,iBAAiB,EACjBC,iBAAiB,EACjBC,eAAe,EACfC,iBAAiB,QACZ,wBAAqB;AAE5B,SAWEC,sBAAsB,EACtBC,gBAAgB,EAChBC,eAAe,QACV,uBAAoB;AAE3B,SAOEC,cAAc,EACdC,gBAAgB,EAChBC,aAAa,EACbC,gBAAgB,QACX,qBAAkB;AAQzB,SAASC,kBAAkB,EAAEC,kBAAkB,QAAQ,sBAAmB;AAE1E,SAASC,gBAAgB,QAAQ,yBAAsB;AACvD,SAASC,SAAS,QAA+B,0BAAuB;AAExE,SACEC,yBAAyB,EACzBC,YAAY,QAKP,uBAAoB","ignoreList":[]}
@@ -2,15 +2,27 @@
2
2
 
3
3
  /**
4
4
  * Terminal outcome of a payment flow — narrow on the `status` field.
5
+ *
6
+ * Every result here is read off a deep link, which is interceptable by design
7
+ * and names no bank identifiers. It reports what happened rather than attesting
8
+ * to it: confirm with your backend via `GET /payment-requests/{reference}`
9
+ * before acting on one.
5
10
  */
6
11
 
7
- /** Payment completed at the bank. `exchangeCode` may be null when recovered
8
- * via status polling (the bank delivered the code straight to the merchant
9
- * backend, bypassing the SDK). */
12
+ /**
13
+ * The return reported a completed payment.
14
+ *
15
+ * Treat this as a prompt to confirm with your backend, not as settlement.
16
+ */
10
17
 
11
18
  /** Payment failed. Always has an `errorCode` so merchants can map to UI copy. */
12
19
 
13
- /** Flow abandoned mid-flight (app killed, host removed the SDK navigator). */
20
+ /**
21
+ * The payer left before the flow resolved either way.
22
+ *
23
+ * A payment already at the bank may still complete after this, so it is not a
24
+ * failure — only your backend knows how it ended.
25
+ */
14
26
 
15
27
  // ---- Constructor helpers ---------------------------------------------------
16
28
 
@@ -1 +1 @@
1
- {"version":3,"names":["paymentSuccess","args","status","paymentCancelled","paymentFailed","paymentAbandoned"],"sourceRoot":"../../../src","sources":["public/payment-result.ts"],"mappings":";;AAAA;AACA;AACA;;AAcA;AACA;AACA;;AAaA;;AAMA;;AAOA;;AAEA,OAAO,SAASA,cAAcA,CAACC,IAAoC,EAAkB;EACnF,OAAO;IAAEC,MAAM,EAAE,SAAS;IAAE,GAAGD;EAAK,CAAC;AACvC;AAEA,OAAO,SAASE,gBAAgBA,CAACF,IAAsC,EAAoB;EACzF,OAAO;IAAEC,MAAM,EAAE,WAAW;IAAE,GAAGD;EAAK,CAAC;AACzC;AAEA,OAAO,SAASG,aAAaA,CAACH,IAAmC,EAAiB;EAChF,OAAO;IAAEC,MAAM,EAAE,QAAQ;IAAE,GAAGD;EAAK,CAAC;AACtC;AAEA,OAAO,SAASI,gBAAgBA,CAACJ,IAAsC,EAAoB;EACzF,OAAO;IAAEC,MAAM,EAAE,WAAW;IAAE,GAAGD;EAAK,CAAC;AACzC","ignoreList":[]}
1
+ {"version":3,"names":["paymentSuccess","args","status","paymentCancelled","paymentFailed","paymentAbandoned"],"sourceRoot":"../../../src","sources":["public/payment-result.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA4CA;AACA;AACA;AACA;AACA;;AASA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAOA;;AAEA,OAAO,SAASA,cAAcA,CAACC,IAAoC,EAAkB;EACnF,OAAO;IAAEC,MAAM,EAAE,SAAS;IAAE,GAAGD;EAAK,CAAC;AACvC;AAEA,OAAO,SAASE,gBAAgBA,CAACF,IAAsC,EAAoB;EACzF,OAAO;IAAEC,MAAM,EAAE,WAAW;IAAE,GAAGD;EAAK,CAAC;AACzC;AAEA,OAAO,SAASG,aAAaA,CAACH,IAAmC,EAAiB;EAChF,OAAO;IAAEC,MAAM,EAAE,QAAQ;IAAE,GAAGD;EAAK,CAAC;AACtC;AAEA,OAAO,SAASI,gBAAgBA,CAACJ,IAAsC,EAAoB;EACzF,OAAO;IAAEC,MAAM,EAAE,WAAW;IAAE,GAAGD;EAAK,CAAC;AACzC","ignoreList":[]}
@@ -2,25 +2,18 @@
2
2
 
3
3
  /**
4
4
  * Why {@link SpareLink.resumeIfNeeded} did not recover a terminal session.
5
- * Mirrors Flutter's `NoRecoveryReason`.
6
- */
7
-
8
- /**
9
- * Outcome of {@link SpareLink.resumeIfNeeded}.
10
5
  *
11
- * Discriminated union aligned with Flutter's sealed `RecoveryResult`.
6
+ * `outcomeUnknown` is the one that carries weight: a payment was pending and no
7
+ * return arrived, so **it may have completed**. The SDK holds no credentials and
8
+ * has nothing to ask with — the reference is handed back for your backend to
9
+ * resolve.
12
10
  */
13
11
 
14
- /** No pending session was recovered. */
12
+ /** Outcome of {@link SpareLink.resumeIfNeeded}. */
15
13
 
16
- /** A pending session was recovered to a terminal {@link PaymentResult}. */
14
+ /** No pending payment was resolved to a terminal outcome. */
17
15
 
18
- /**
19
- * A pending session is non-terminal and the SDK opened its recovery UI —
20
- * the integrator should treat this as in-progress, not "nothing happened".
21
- * The terminal outcome arrives later via `SpareLink.events` /
22
- * `spareLink.emitTerminal`, not as a second `resumeIfNeeded` resolution.
23
- */
16
+ /** A pending payment was resolved to a terminal {@link PaymentResult}. */
24
17
 
25
18
  export function isSessionRecovered(r) {
26
19
  return r.kind === 'recovered';
@@ -28,7 +21,4 @@ export function isSessionRecovered(r) {
28
21
  export function isNoRecoveryNeeded(r) {
29
22
  return r.kind === 'none';
30
23
  }
31
- export function isRecoveryAwaitingUser(r) {
32
- return r.kind === 'awaitingUser';
33
- }
34
24
  //# sourceMappingURL=recovery-result.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isSessionRecovered","r","kind","isNoRecoveryNeeded","isRecoveryAwaitingUser"],"sourceRoot":"../../../src","sources":["public/recovery-result.ts"],"mappings":";;AAEA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA;;AAMA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAMA,OAAO,SAASA,kBAAkBA,CAACC,CAAiB,EAAyB;EAC3E,OAAOA,CAAC,CAACC,IAAI,KAAK,WAAW;AAC/B;AAEA,OAAO,SAASC,kBAAkBA,CAACF,CAAiB,EAAyB;EAC3E,OAAOA,CAAC,CAACC,IAAI,KAAK,MAAM;AAC1B;AAEA,OAAO,SAASE,sBAAsBA,CAACH,CAAiB,EAA6B;EACnF,OAAOA,CAAC,CAACC,IAAI,KAAK,cAAc;AAClC","ignoreList":[]}
1
+ {"version":3,"names":["isSessionRecovered","r","kind","isNoRecoveryNeeded"],"sourceRoot":"../../../src","sources":["public/recovery-result.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOA;;AAGA;;AAQA;;AAMA,OAAO,SAASA,kBAAkBA,CAACC,CAAiB,EAAyB;EAC3E,OAAOA,CAAC,CAACC,IAAI,KAAK,WAAW;AAC/B;AAEA,OAAO,SAASC,kBAAkBA,CAACF,CAAiB,EAAyB;EAC3E,OAAOA,CAAC,CAACC,IAAI,KAAK,MAAM;AAC1B","ignoreList":[]}
@@ -1,18 +1,40 @@
1
1
  "use strict";
2
2
 
3
+ import { Platform } from 'react-native';
4
+
5
+ /**
6
+ * Deployment environment for the Spare Link API, which is also where the hosted
7
+ * payment page is served from.
8
+ */
9
+
10
+ /** Default port an Encore app serves on. */
11
+ const LOCAL_PORT = 4000;
12
+
3
13
  /**
4
- * Deployment environment for the Spare Link API.
14
+ * A Spare API running on the developer's own machine.
5
15
  *
6
- * Each value maps to a default base URL
7
- * the SDK will hit unless `baseUrl` is overridden in {@link SpareLinkConfig}.
16
+ * The host differs by platform because an emulator's `localhost` is the emulator,
17
+ * not the machine hosting it. A **physical device** reaches neither, so pass
18
+ * `baseUrl` with your machine's address on the local network instead.
19
+ *
20
+ * Serves over plain HTTP, which both platforms block by default. See the
21
+ * integration notes for the debug-only exceptions that allow it.
8
22
  */
23
+ function localBaseUrl() {
24
+ return Platform.OS === 'android' ? `http://10.0.2.2:${LOCAL_PORT}` : `http://localhost:${LOCAL_PORT}`;
25
+ }
9
26
 
27
+ /**
28
+ * `dev` is Spare's own integration environment, not one an integrator would ship
29
+ * against. Unlike the others its host names a single tenant, so it serves UAE alone.
30
+ */
10
31
  const DEFAULT_BASE_URLS = {
32
+ dev: 'https://api-dev-uae.tryspare.ae',
11
33
  sandbox: 'https://api.sandbox.tryspare.ae',
12
34
  production: 'https://api.tryspare.ae'
13
35
  };
14
36
  export function defaultBaseUrlFor(env) {
15
- return DEFAULT_BASE_URLS[env];
37
+ return env === 'local' ? localBaseUrl() : DEFAULT_BASE_URLS[env];
16
38
  }
17
39
 
18
40
  /** Spare API tenant — one country per tenant. */
@@ -26,7 +48,7 @@ export function tenantCountryCode(t) {
26
48
  return TENANT_COUNTRY_CODES[t];
27
49
  }
28
50
 
29
- /** Configuration to start a Spare Link payment flow. */
51
+ /** Configuration for a Spare Link instance. */
30
52
 
31
53
  /** Resolved base URL: explicit `baseUrl` if provided, else the environment default. */
32
54
  export function resolvedBaseUrl(config) {
@@ -34,21 +56,26 @@ export function resolvedBaseUrl(config) {
34
56
  }
35
57
 
36
58
  /**
37
- * Recovery config — like {@link SpareLinkConfig} but without `linkToken`
38
- * (read from the persisted record).
59
+ * The tenants the hosted flow can actually serve.
60
+ *
61
+ * `tenant` accepts the others because the API surface outlives this list, but
62
+ * accepting one the page cannot serve would put a payer in front of the wrong
63
+ * country's flow rather than telling the integrator at construction time.
39
64
  */
65
+ const SUPPORTED_TENANTS = ['uae'];
40
66
 
41
- export function resolvedResumeBaseUrl(config) {
42
- return config.baseUrl ?? defaultBaseUrlFor(config.environment);
43
- }
44
-
45
- /** Throws if a SpareLinkConfig is structurally invalid. */
67
+ /**
68
+ * Throws if a config cannot be honoured.
69
+ *
70
+ * Called from {@link SpareLink}'s constructor, so a bad value fails where it was
71
+ * written rather than reaching the webview as a URL nobody meant.
72
+ */
46
73
  export function assertValidConfig(config) {
47
- if (!config.linkToken) {
48
- throw new Error('SpareLinkConfig: linkToken must not be empty');
49
- }
50
74
  if (config.baseUrl && !/^https?:\/\//.test(config.baseUrl)) {
51
75
  throw new Error('SpareLinkConfig: baseUrl must start with http:// or https://');
52
76
  }
77
+ if (!SUPPORTED_TENANTS.includes(config.tenant)) {
78
+ throw new Error(`SpareLinkConfig: the hosted flow does not serve tenant '${config.tenant}' yet ` + `(supported: ${SUPPORTED_TENANTS.join(', ')})`);
79
+ }
53
80
  }
54
81
  //# sourceMappingURL=spare-link-config.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_BASE_URLS","sandbox","production","defaultBaseUrlFor","env","TENANT_COUNTRY_CODES","ksa","uae","bah","tenantCountryCode","t","resolvedBaseUrl","config","baseUrl","environment","resolvedResumeBaseUrl","assertValidConfig","linkToken","Error","test"],"sourceRoot":"../../../src","sources":["public/spare-link-config.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAGA,MAAMA,iBAAqD,GAAG;EAC5DC,OAAO,EAAE,iCAAiC;EAC1CC,UAAU,EAAE;AACd,CAAC;AAED,OAAO,SAASC,iBAAiBA,CAACC,GAAuB,EAAU;EACjE,OAAOJ,iBAAiB,CAACI,GAAG,CAAC;AAC/B;;AAEA;;AAGA,MAAMC,oBAAoD,GAAG;EAC3DC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE;AACP,CAAC;AAED,OAAO,SAASC,iBAAiBA,CAACC,CAAiB,EAAU;EAC3D,OAAOL,oBAAoB,CAACK,CAAC,CAAC;AAChC;;AAEA;;AA2BA;AACA,OAAO,SAASC,eAAeA,CAACC,MAAuB,EAAU;EAC/D,OAAOA,MAAM,CAACC,OAAO,IAAIV,iBAAiB,CAACS,MAAM,CAACE,WAAW,CAAC;AAChE;;AAEA;AACA;AACA;AACA;;AASA,OAAO,SAASC,qBAAqBA,CAACH,MAA6B,EAAU;EAC3E,OAAOA,MAAM,CAACC,OAAO,IAAIV,iBAAiB,CAACS,MAAM,CAACE,WAAW,CAAC;AAChE;;AAEA;AACA,OAAO,SAASE,iBAAiBA,CAACJ,MAAuB,EAAQ;EAC/D,IAAI,CAACA,MAAM,CAACK,SAAS,EAAE;IACrB,MAAM,IAAIC,KAAK,CAAC,8CAA8C,CAAC;EACjE;EACA,IAAIN,MAAM,CAACC,OAAO,IAAI,CAAC,cAAc,CAACM,IAAI,CAACP,MAAM,CAACC,OAAO,CAAC,EAAE;IAC1D,MAAM,IAAIK,KAAK,CAAC,8DAA8D,CAAC;EACjF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["Platform","LOCAL_PORT","localBaseUrl","OS","DEFAULT_BASE_URLS","dev","sandbox","production","defaultBaseUrlFor","env","TENANT_COUNTRY_CODES","ksa","uae","bah","tenantCountryCode","t","resolvedBaseUrl","config","baseUrl","environment","SUPPORTED_TENANTS","assertValidConfig","test","Error","includes","tenant","join"],"sourceRoot":"../../../src","sources":["public/spare-link-config.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA;;AAGA;AACA,MAAMC,UAAU,GAAG,IAAI;;AAEvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,YAAYA,CAAA,EAAW;EAC9B,OAAOF,QAAQ,CAACG,EAAE,KAAK,SAAS,GAC5B,mBAAmBF,UAAU,EAAE,GAC/B,oBAAoBA,UAAU,EAAE;AACtC;;AAEA;AACA;AACA;AACA;AACA,MAAMG,iBAAiF,GAAG;EACxFC,GAAG,EAAE,iCAAiC;EACtCC,OAAO,EAAE,iCAAiC;EAC1CC,UAAU,EAAE;AACd,CAAC;AAED,OAAO,SAASC,iBAAiBA,CAACC,GAAuB,EAAU;EACjE,OAAOA,GAAG,KAAK,OAAO,GAAGP,YAAY,CAAC,CAAC,GAAGE,iBAAiB,CAACK,GAAG,CAAC;AAClE;;AAEA;;AAGA,MAAMC,oBAA8D,GAAG;EACrEC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE;AACP,CAAC;AAED,OAAO,SAASC,iBAAiBA,CAACC,CAAiB,EAAU;EAC3D,OAAOL,oBAAoB,CAACK,CAAC,CAAC;AAChC;;AAEA;;AAeA;AACA,OAAO,SAASC,eAAeA,CAACC,MAAuB,EAAU;EAC/D,OAAOA,MAAM,CAACC,OAAO,IAAIV,iBAAiB,CAACS,MAAM,CAACE,WAAW,CAAC;AAChE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,iBAA4C,GAAG,CAAC,KAAK,CAAC;;AAE5D;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACJ,MAAuB,EAAQ;EAC/D,IAAIA,MAAM,CAACC,OAAO,IAAI,CAAC,cAAc,CAACI,IAAI,CAACL,MAAM,CAACC,OAAO,CAAC,EAAE;IAC1D,MAAM,IAAIK,KAAK,CAAC,8DAA8D,CAAC;EACjF;EACA,IAAI,CAACH,iBAAiB,CAACI,QAAQ,CAACP,MAAM,CAACQ,MAAM,CAAC,EAAE;IAC9C,MAAM,IAAIF,KAAK,CACb,2DAA2DN,MAAM,CAACQ,MAAM,QAAQ,GAC9E,eAAeL,iBAAiB,CAACM,IAAI,CAAC,IAAI,CAAC,GAC/C,CAAC;EACH;AACF","ignoreList":[]}
@@ -3,20 +3,21 @@
3
3
  /**
4
4
  * Lifecycle events emitted on {@link SpareLink.events}.
5
5
  *
6
- * This is a discriminated union (TypeScript's equivalent to Dart sealed classes).
7
- * Use a switch on the `type` field for exhaustive handling:
6
+ * Analytics only — never required to drive the flow. This is a discriminated
7
+ * union (TypeScript's equivalent to Dart sealed classes); switch on `type` for
8
+ * exhaustive handling:
8
9
  *
9
10
  * ```ts
10
11
  * spareLink.events.subscribe((event) => {
11
12
  * switch (event.type) {
12
13
  * case 'initialized':
13
- * console.log('Started flow for', event.linkToken);
14
+ * console.log('Started flow for', event.reference);
14
15
  * break;
15
- * case 'sessionLoaded':
16
- * console.log('Session loaded', event.linkSessionId);
16
+ * case 'pageReady':
17
+ * console.log('Payer can act on the page');
17
18
  * break;
18
19
  * case 'succeeded':
19
- * console.log('Payment succeeded', event.result.exchangeCode);
20
+ * console.log('Reported success for', event.result.reference);
20
21
  * break;
21
22
  * // ...
22
23
  * }
@@ -26,24 +27,27 @@
26
27
 
27
28
  /** The SDK has started a payment flow. */
28
29
 
29
- /** The payment session was loaded from the server. */
30
-
31
- /** The user confirmed consent and a consent request was submitted. */
30
+ /**
31
+ * The hosted page is interactive and the payer has something to act on.
32
+ *
33
+ * The steps after this — choosing a bank, the payee check, reading the consent —
34
+ * happen inside the page, which does not report them.
35
+ */
32
36
 
33
- /** The user is being redirected to their bank's authorization page. */
37
+ /** The payer is being handed to their bank, outside the WebView. */
34
38
 
35
39
  /** The bank has redirected back with a callback URI. */
36
40
 
37
- /** The payment completed successfully and the flow is about to resolve. */
41
+ /** The return reported a completed payment and the flow is about to resolve. */
38
42
 
39
43
  /** The payment failed and the flow is about to resolve. */
40
44
 
41
- /** The user cancelled the payment and the flow is about to resolve. */
45
+ /** The payer cancelled the payment and the flow is about to resolve. */
42
46
 
43
- /** The flow was abandoned without an explicit user action. */
47
+ /** The payer left before the flow resolved either way. */
44
48
 
45
49
  /** All possible event type strings for type narrowing. */
46
- export const SPARE_LINK_EVENT_TYPES = ['initialized', 'sessionLoaded', 'consentStarted', 'redirectToBank', 'bankCallbackReceived', 'succeeded', 'failed', 'cancelled', 'abandoned'];
50
+ export const SPARE_LINK_EVENT_TYPES = ['initialized', 'pageReady', 'redirectToBank', 'bankCallbackReceived', 'succeeded', 'failed', 'cancelled', 'abandoned'];
47
51
  /** Type guard for SpareLinkEvent. */
48
52
  export function isSpareLinkEvent(value) {
49
53
  if (typeof value !== 'object' || value === null) return false;
@@ -53,38 +57,28 @@ export function isSpareLinkEvent(value) {
53
57
 
54
58
  /** Factory functions for creating events (internal use). */
55
59
  export const SpareLinkEvents = {
56
- initialized(linkToken) {
60
+ initialized(reference) {
57
61
  return {
58
62
  type: 'initialized',
59
- linkToken
60
- };
61
- },
62
- sessionLoaded(linkToken, linkSessionId) {
63
- return linkSessionId ? {
64
- type: 'sessionLoaded',
65
- linkToken,
66
- linkSessionId
67
- } : {
68
- type: 'sessionLoaded',
69
- linkToken
63
+ reference
70
64
  };
71
65
  },
72
- consentStarted(linkToken) {
66
+ pageReady(reference) {
73
67
  return {
74
- type: 'consentStarted',
75
- linkToken
68
+ type: 'pageReady',
69
+ reference
76
70
  };
77
71
  },
78
- redirectToBank(linkToken) {
72
+ redirectToBank(reference) {
79
73
  return {
80
74
  type: 'redirectToBank',
81
- linkToken
75
+ reference
82
76
  };
83
77
  },
84
- bankCallbackReceived(linkToken) {
78
+ bankCallbackReceived(reference) {
85
79
  return {
86
80
  type: 'bankCallbackReceived',
87
- linkToken
81
+ reference
88
82
  };
89
83
  },
90
84
  succeeded(result) {
@@ -1 +1 @@
1
- {"version":3,"names":["SPARE_LINK_EVENT_TYPES","isSpareLinkEvent","value","type","includes","SpareLinkEvents","initialized","linkToken","sessionLoaded","linkSessionId","consentStarted","redirectToBank","bankCallbackReceived","succeeded","result","failed","cancelled","abandoned"],"sourceRoot":"../../../src","sources":["public/spare-link-event.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAYA;;AAMA;;AAQA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;AACA,OAAO,MAAMA,sBAAsB,GAAG,CACpC,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,QAAQ,EACR,WAAW,EACX,WAAW,CACH;AAIV;AACA,OAAO,SAASC,gBAAgBA,CAACC,KAAc,EAA2B;EACxE,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE,OAAO,KAAK;EAC7D,MAAMC,IAAI,GAAID,KAAK,CAAwBC,IAAI;EAC/C,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIH,sBAAsB,CAACI,QAAQ,CAACD,IAA0B,CAAC;AAChG;;AAEA;AACA,OAAO,MAAME,eAAe,GAAG;EAC7BC,WAAWA,CAACC,SAAiB,EAAwB;IACnD,OAAO;MAAEJ,IAAI,EAAE,aAAa;MAAEI;IAAU,CAAC;EAC3C,CAAC;EACDC,aAAaA,CAACD,SAAiB,EAAEE,aAAsB,EAA0B;IAC/E,OAAOA,aAAa,GAChB;MAAEN,IAAI,EAAE,eAAe;MAAEI,SAAS;MAAEE;IAAc,CAAC,GACnD;MAAEN,IAAI,EAAE,eAAe;MAAEI;IAAU,CAAC;EAC1C,CAAC;EACDG,cAAcA,CAACH,SAAiB,EAA2B;IACzD,OAAO;MAAEJ,IAAI,EAAE,gBAAgB;MAAEI;IAAU,CAAC;EAC9C,CAAC;EACDI,cAAcA,CAACJ,SAAiB,EAA2B;IACzD,OAAO;MAAEJ,IAAI,EAAE,gBAAgB;MAAEI;IAAU,CAAC;EAC9C,CAAC;EACDK,oBAAoBA,CAACL,SAAiB,EAAiC;IACrE,OAAO;MAAEJ,IAAI,EAAE,sBAAsB;MAAEI;IAAU,CAAC;EACpD,CAAC;EACDM,SAASA,CAACC,MAAqB,EAAsB;IACnD,OAAO;MAAEX,IAAI,EAAE,WAAW;MAAEW;IAAO,CAAC;EACtC,CAAC;EACDC,MAAMA,CAACD,MAAqB,EAAmB;IAC7C,OAAO;MAAEX,IAAI,EAAE,QAAQ;MAAEW;IAAO,CAAC;EACnC,CAAC;EACDE,SAASA,CAACF,MAAqB,EAAsB;IACnD,OAAO;MAAEX,IAAI,EAAE,WAAW;MAAEW;IAAO,CAAC;EACtC,CAAC;EACDG,SAASA,CAACH,MAAqB,EAAsB;IACnD,OAAO;MAAEX,IAAI,EAAE,WAAW;MAAEW;IAAO,CAAC;EACtC;AACF,CAAU","ignoreList":[]}
1
+ {"version":3,"names":["SPARE_LINK_EVENT_TYPES","isSpareLinkEvent","value","type","includes","SpareLinkEvents","initialized","reference","pageReady","redirectToBank","bankCallbackReceived","succeeded","result","failed","cancelled","abandoned"],"sourceRoot":"../../../src","sources":["public/spare-link-event.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAWA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;;AAMA;AACA,OAAO,MAAMA,sBAAsB,GAAG,CACpC,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,QAAQ,EACR,WAAW,EACX,WAAW,CACH;AAIV;AACA,OAAO,SAASC,gBAAgBA,CAACC,KAAc,EAA2B;EACxE,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE,OAAO,KAAK;EAC7D,MAAMC,IAAI,GAAID,KAAK,CAAwBC,IAAI;EAC/C,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIH,sBAAsB,CAACI,QAAQ,CAACD,IAA0B,CAAC;AAChG;;AAEA;AACA,OAAO,MAAME,eAAe,GAAG;EAC7BC,WAAWA,CAACC,SAAiB,EAAwB;IACnD,OAAO;MAAEJ,IAAI,EAAE,aAAa;MAAEI;IAAU,CAAC;EAC3C,CAAC;EACDC,SAASA,CAACD,SAAiB,EAAsB;IAC/C,OAAO;MAAEJ,IAAI,EAAE,WAAW;MAAEI;IAAU,CAAC;EACzC,CAAC;EACDE,cAAcA,CAACF,SAAiB,EAA2B;IACzD,OAAO;MAAEJ,IAAI,EAAE,gBAAgB;MAAEI;IAAU,CAAC;EAC9C,CAAC;EACDG,oBAAoBA,CAACH,SAAiB,EAAiC;IACrE,OAAO;MAAEJ,IAAI,EAAE,sBAAsB;MAAEI;IAAU,CAAC;EACpD,CAAC;EACDI,SAASA,CAACC,MAAqB,EAAsB;IACnD,OAAO;MAAET,IAAI,EAAE,WAAW;MAAES;IAAO,CAAC;EACtC,CAAC;EACDC,MAAMA,CAACD,MAAqB,EAAmB;IAC7C,OAAO;MAAET,IAAI,EAAE,QAAQ;MAAES;IAAO,CAAC;EACnC,CAAC;EACDE,SAASA,CAACF,MAAqB,EAAsB;IACnD,OAAO;MAAET,IAAI,EAAE,WAAW;MAAES;IAAO,CAAC;EACtC,CAAC;EACDG,SAASA,CAACH,MAAqB,EAAsB;IACnD,OAAO;MAAET,IAAI,EAAE,WAAW;MAAES;IAAO,CAAC;EACtC;AACF,CAAU","ignoreList":[]}
@@ -2,13 +2,15 @@
2
2
 
3
3
  import { createEventEmitter } from "../internal/event-emitter.js";
4
4
  import { paymentAbandoned } from "./payment-result.js";
5
- import { isSessionRecovered } from "./recovery-result.js";
6
- import { defaultBaseUrlFor } from "./spare-link-config.js";
5
+ import { assertValidConfig, defaultBaseUrlFor } from "./spare-link-config.js";
7
6
  import { SpareLinkEvents } from "./spare-link-event.js";
8
7
  import { SpareLinkSession } from "./spare-link-session.js";
9
8
  /**
10
- * Entry point for the Spare Link payment SDK — aligned with Flutter's
11
- * instance-based {@link SpareLink} API.
9
+ * Entry point for the Spare Link payment SDK.
10
+ *
11
+ * Your backend creates the payment request — with `channel: 'sdk_react_native'`
12
+ * and the return URLs your app is registered for — and gives the app the
13
+ * reference it returns. That reference is all this SDK needs.
12
14
  *
13
15
  * Mount {@link SpareLinkHost} once near your app root and pass this instance:
14
16
  *
@@ -22,6 +24,10 @@ import { SpareLinkSession } from "./spare-link-session.js";
22
24
  * <App />
23
25
  * </SpareLinkHost>
24
26
  * ```
27
+ *
28
+ * The SDK makes no API calls of its own and holds no credentials. Every result
29
+ * it reports comes from a deep link that is interceptable by design, so confirm
30
+ * with your backend via `GET /payment-requests/{reference}` before acting on one.
25
31
  */
26
32
  export class SpareLink {
27
33
  _events = createEventEmitter();
@@ -31,11 +37,18 @@ export class SpareLink {
31
37
  _pendingRedirects = [];
32
38
  _pendingResumes = [];
33
39
  constructor(options) {
40
+ // Fails where the config was written rather than letting a host the page was
41
+ // never served from reach the webview as a URL nobody meant.
42
+ assertValidConfig({
43
+ environment: options.environment,
44
+ tenant: options.tenant,
45
+ ...(options.baseUrl ? {
46
+ baseUrl: options.baseUrl
47
+ } : {})
48
+ });
34
49
  this.environment = options.environment;
35
50
  this.tenant = options.tenant;
36
51
  this.baseUrl = options.baseUrl;
37
- this.fetch = options.fetch;
38
- this.requestTimeoutMs = options.requestTimeoutMs;
39
52
  this.pendingSessionStore = options.pendingSessionStore;
40
53
  }
41
54
 
@@ -53,52 +66,35 @@ export class SpareLink {
53
66
  }
54
67
 
55
68
  /**
56
- * Starts a new payment flow.
69
+ * Opens the hosted payment page for `reference` and resolves when the flow ends.
57
70
  *
58
- * Returns a {@link SpareLinkSession} immediately; await `session.result`
59
- * for the terminal outcome.
71
+ * Returns a {@link SpareLinkSession} immediately; await `session.result` for the
72
+ * terminal outcome. There is no session to load first: the page resolves the
73
+ * request itself, so the payer sees it without waiting on a round trip.
60
74
  */
61
75
  async start(args) {
62
76
  const {
63
- linkToken
77
+ reference
64
78
  } = args;
65
- if (!linkToken) {
66
- const result = paymentAbandoned({
67
- linkToken: '',
68
- message: 'SpareLinkConfig: linkToken must not be empty',
69
- resolvedAtMs: Date.now()
70
- });
71
- this._emitTerminal(result);
72
- return new SpareLinkSession({
73
- linkToken: '',
74
- result: Promise.resolve(result)
75
- });
79
+ if (!reference) {
80
+ return this._resolveImmediately('', 'SpareLink.start: reference must not be empty');
76
81
  }
77
82
  if (this._disposed) {
78
- const result = paymentAbandoned({
79
- linkToken,
80
- message: 'SpareLink has been disposed.',
81
- resolvedAtMs: Date.now()
82
- });
83
- this._emitTerminal(result);
84
- return new SpareLinkSession({
85
- linkToken,
86
- result: Promise.resolve(result)
87
- });
83
+ return this._resolveImmediately(reference, 'SpareLink has been disposed.');
88
84
  }
89
- this._events.emit(SpareLinkEvents.initialized(linkToken));
85
+ this._events.emit(SpareLinkEvents.initialized(reference));
90
86
  if (!this._host) {
91
87
  return new Promise(resolve => {
92
88
  this._pendingStarts.push({
93
- linkToken,
89
+ reference,
94
90
  resolve
95
91
  });
96
92
  });
97
93
  }
98
- return this._hostStart(linkToken);
94
+ return this._hostStart(reference);
99
95
  }
100
96
 
101
- /** Processes a deep-link URI received from the bank. */
97
+ /** Processes a deep-link URI the payer returned through. */
102
98
  async handleRedirect(uri) {
103
99
  if (this._disposed) return false;
104
100
  if (!this._host) {
@@ -112,15 +108,16 @@ export class SpareLink {
112
108
  return this._host.handleRedirect(uri);
113
109
  }
114
110
 
115
- /** Checks for a pending session saved during a previous flow and recovers it. */
111
+ /**
112
+ * Reports a payment that was left in progress by a previous app session.
113
+ *
114
+ * If the return deep link arrived before the app had a flow to give it to, the
115
+ * outcome is resolved from it. Otherwise the SDK cannot say how the payment
116
+ * ended — it holds no credentials, so it has nothing to ask with — and reports
117
+ * `outcomeUnknown` with the reference for your backend to resolve.
118
+ */
116
119
  async resumeIfNeeded() {
117
- if (this._disposed) {
118
- return {
119
- kind: 'none',
120
- reason: 'persistenceUnavailable'
121
- };
122
- }
123
- if (!this.pendingSessionStore) {
120
+ if (this._disposed || !this.pendingSessionStore) {
124
121
  return {
125
122
  kind: 'none',
126
123
  reason: 'persistenceUnavailable'
@@ -142,13 +139,13 @@ export class SpareLink {
142
139
  const resumes = this._pendingResumes.splice(0);
143
140
  for (const p of starts) {
144
141
  const result = paymentAbandoned({
145
- linkToken: p.linkToken,
142
+ reference: p.reference,
146
143
  message: 'SpareLink has been disposed.',
147
144
  resolvedAtMs: Date.now()
148
145
  });
149
146
  this._emitTerminal(result);
150
147
  p.resolve(new SpareLinkSession({
151
- linkToken: p.linkToken,
148
+ reference: p.reference,
152
149
  result: Promise.resolve(result)
153
150
  }));
154
151
  }
@@ -187,6 +184,18 @@ export class SpareLink {
187
184
  emitTerminal(result) {
188
185
  this._emitTerminal(result);
189
186
  }
187
+ _resolveImmediately(reference, message) {
188
+ const result = paymentAbandoned({
189
+ reference,
190
+ message,
191
+ resolvedAtMs: Date.now()
192
+ });
193
+ this._emitTerminal(result);
194
+ return new SpareLinkSession({
195
+ reference,
196
+ result: Promise.resolve(result)
197
+ });
198
+ }
190
199
  _emitTerminal(result) {
191
200
  switch (result.status) {
192
201
  case 'success':
@@ -203,12 +212,12 @@ export class SpareLink {
203
212
  break;
204
213
  }
205
214
  }
206
- async _hostStart(linkToken) {
215
+ async _hostStart(reference) {
207
216
  const host = this._host;
208
217
  if (!host) {
209
218
  return new Promise(resolve => {
210
219
  this._pendingStarts.push({
211
- linkToken,
220
+ reference,
212
221
  resolve
213
222
  });
214
223
  });
@@ -217,29 +226,24 @@ export class SpareLink {
217
226
  const resultPromise = new Promise(resolve => {
218
227
  resolveResult = resolve;
219
228
  });
220
- const session = new SpareLinkSession({
221
- linkToken,
222
- result: resultPromise
223
- });
224
229
  host.startFlow({
225
- linkToken,
230
+ reference,
226
231
  resolve: result => {
227
232
  this._emitTerminal(result);
228
233
  resolveResult(result);
229
- },
230
- onSessionLoaded: linkSessionId => {
231
- session.updateLinkSessionId(linkSessionId);
232
- this._events.emit(SpareLinkEvents.sessionLoaded(linkToken, linkSessionId));
233
234
  }
234
235
  });
235
- return session;
236
+ return new SpareLinkSession({
237
+ reference,
238
+ result: resultPromise
239
+ });
236
240
  }
237
241
  _drainPending(host) {
238
242
  const starts = this._pendingStarts.splice(0);
239
243
  const redirects = this._pendingRedirects.splice(0);
240
244
  const resumes = this._pendingResumes.splice(0);
241
245
  for (const p of starts) {
242
- void this._hostStart(p.linkToken).then(p.resolve);
246
+ void this._hostStart(p.reference).then(p.resolve);
243
247
  }
244
248
  for (const p of redirects) {
245
249
  void host.handleRedirect(p.uri).then(p.resolve, () => p.resolve(false));
@@ -252,22 +256,14 @@ export class SpareLink {
252
256
  }
253
257
  }
254
258
  }
255
-
256
- /** Map legacy recovery helper outcomes to Flutter-aligned {@link RecoveryResult}. */
257
- export function mapHostRecovery(recovery) {
258
- if (recovery.kind === 'inProgress') {
259
- return {
260
- kind: 'awaitingUser',
261
- linkToken: recovery.linkToken
262
- };
263
- }
264
- return recovery;
265
- }
266
- export function noRecovery(reason) {
267
- return {
259
+ export function noRecovery(reason, reference) {
260
+ return reference ? {
261
+ kind: 'none',
262
+ reason,
263
+ reference
264
+ } : {
268
265
  kind: 'none',
269
266
  reason
270
267
  };
271
268
  }
272
- export { isSessionRecovered };
273
269
  //# sourceMappingURL=spare-link-instance.js.map