@spare-technologies/spare-link 0.1.0-beta.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 (648) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/LICENSE +21 -0
  3. package/README.md +173 -0
  4. package/assets/fonts/MetroSans-Bold.otf +0 -0
  5. package/assets/fonts/MetroSans-Light.otf +0 -0
  6. package/assets/fonts/MetroSans-Medium.otf +0 -0
  7. package/assets/fonts/MetroSans-Regular.otf +0 -0
  8. package/assets/fonts/MetroSans-SemiBold.otf +0 -0
  9. package/assets/images/altareq_logo_mini.png +0 -0
  10. package/assets/images/altareq_logo_transparent_bg.png +0 -0
  11. package/assets/images/altareq_logo_white_bg.png +0 -0
  12. package/assets/images/spare_logo.png +0 -0
  13. package/lib/commonjs/core/client/link-api-client.js +297 -0
  14. package/lib/commonjs/core/client/link-api-client.js.map +1 -0
  15. package/lib/commonjs/core/errors/payment-api-error.js +35 -0
  16. package/lib/commonjs/core/errors/payment-api-error.js.map +1 -0
  17. package/lib/commonjs/core/models/index.js +2 -0
  18. package/lib/commonjs/core/models/index.js.map +1 -0
  19. package/lib/commonjs/core/models/link-session-status.js +14 -0
  20. package/lib/commonjs/core/models/link-session-status.js.map +1 -0
  21. package/lib/commonjs/core/models/payment-return-params.js +42 -0
  22. package/lib/commonjs/core/models/payment-return-params.js.map +1 -0
  23. package/lib/commonjs/core/models/payment-type.js +45 -0
  24. package/lib/commonjs/core/models/payment-type.js.map +1 -0
  25. package/lib/commonjs/core/models/wire-mappers.js +277 -0
  26. package/lib/commonjs/core/models/wire-mappers.js.map +1 -0
  27. package/lib/commonjs/core/services/consent-presenter.js +150 -0
  28. package/lib/commonjs/core/services/consent-presenter.js.map +1 -0
  29. package/lib/commonjs/core/services/execute-resume-if-needed.js +216 -0
  30. package/lib/commonjs/core/services/execute-resume-if-needed.js.map +1 -0
  31. package/lib/commonjs/core/services/multi-payment-rules-presenter.js +151 -0
  32. package/lib/commonjs/core/services/multi-payment-rules-presenter.js.map +1 -0
  33. package/lib/commonjs/core/services/payment-flow-controller.js +547 -0
  34. package/lib/commonjs/core/services/payment-flow-controller.js.map +1 -0
  35. package/lib/commonjs/core/services/payment-flow-state.js +110 -0
  36. package/lib/commonjs/core/services/payment-flow-state.js.map +1 -0
  37. package/lib/commonjs/core/services/payment-result-mapper.js +49 -0
  38. package/lib/commonjs/core/services/payment-result-mapper.js.map +1 -0
  39. package/lib/commonjs/core/services/pending-session-store.js +6 -0
  40. package/lib/commonjs/core/services/pending-session-store.js.map +1 -0
  41. package/lib/commonjs/core/services/presentation-utils.js +11 -0
  42. package/lib/commonjs/core/services/presentation-utils.js.map +1 -0
  43. package/lib/commonjs/core/services/redirect-buffer.js +40 -0
  44. package/lib/commonjs/core/services/redirect-buffer.js.map +1 -0
  45. package/lib/commonjs/core/services/user-friendly-messages.js +46 -0
  46. package/lib/commonjs/core/services/user-friendly-messages.js.map +1 -0
  47. package/lib/commonjs/index.js +294 -0
  48. package/lib/commonjs/index.js.map +1 -0
  49. package/lib/commonjs/internal/bank-redirect.js +53 -0
  50. package/lib/commonjs/internal/bank-redirect.js.map +1 -0
  51. package/lib/commonjs/internal/deep-link-listener.js +39 -0
  52. package/lib/commonjs/internal/deep-link-listener.js.map +1 -0
  53. package/lib/commonjs/internal/event-emitter.js +36 -0
  54. package/lib/commonjs/internal/event-emitter.js.map +1 -0
  55. package/lib/commonjs/internal/index.js +34 -0
  56. package/lib/commonjs/internal/index.js.map +1 -0
  57. package/lib/commonjs/internal/logger.js +67 -0
  58. package/lib/commonjs/internal/logger.js.map +1 -0
  59. package/lib/commonjs/internal/redact-uri.js +25 -0
  60. package/lib/commonjs/internal/redact-uri.js.map +1 -0
  61. package/lib/commonjs/internal/secure-store-pending-session-store.js +92 -0
  62. package/lib/commonjs/internal/secure-store-pending-session-store.js.map +1 -0
  63. package/lib/commonjs/internal/telemetry-collector.js +80 -0
  64. package/lib/commonjs/internal/telemetry-collector.js.map +1 -0
  65. package/lib/commonjs/package.json +1 -0
  66. package/lib/commonjs/public/constants.js +21 -0
  67. package/lib/commonjs/public/constants.js.map +1 -0
  68. package/lib/commonjs/public/index.js +152 -0
  69. package/lib/commonjs/public/index.js.map +1 -0
  70. package/lib/commonjs/public/payment-result.js +48 -0
  71. package/lib/commonjs/public/payment-result.js.map +1 -0
  72. package/lib/commonjs/public/recovery-result.js +40 -0
  73. package/lib/commonjs/public/recovery-result.js.map +1 -0
  74. package/lib/commonjs/public/spare-link-callbacks.js +6 -0
  75. package/lib/commonjs/public/spare-link-callbacks.js.map +1 -0
  76. package/lib/commonjs/public/spare-link-config.js +62 -0
  77. package/lib/commonjs/public/spare-link-config.js.map +1 -0
  78. package/lib/commonjs/public/spare-link-event.js +120 -0
  79. package/lib/commonjs/public/spare-link-event.js.map +1 -0
  80. package/lib/commonjs/public/spare-link-host-api.js +6 -0
  81. package/lib/commonjs/public/spare-link-host-api.js.map +1 -0
  82. package/lib/commonjs/public/spare-link-instance.js +285 -0
  83. package/lib/commonjs/public/spare-link-instance.js.map +1 -0
  84. package/lib/commonjs/public/spare-link-session.js +26 -0
  85. package/lib/commonjs/public/spare-link-session.js.map +1 -0
  86. package/lib/commonjs/public/spare-link.js +31 -0
  87. package/lib/commonjs/public/spare-link.js.map +1 -0
  88. package/lib/commonjs/ui/consent/charge-bearer-display.js +99 -0
  89. package/lib/commonjs/ui/consent/charge-bearer-display.js.map +1 -0
  90. package/lib/commonjs/ui/consent/consent-accordion.js +94 -0
  91. package/lib/commonjs/ui/consent/consent-accordion.js.map +1 -0
  92. package/lib/commonjs/ui/consent/consent-summary-section.js +27 -0
  93. package/lib/commonjs/ui/consent/consent-summary-section.js.map +1 -0
  94. package/lib/commonjs/ui/consent/cop-information.js +168 -0
  95. package/lib/commonjs/ui/consent/cop-information.js.map +1 -0
  96. package/lib/commonjs/ui/consent/international-payment-summary.js +98 -0
  97. package/lib/commonjs/ui/consent/international-payment-summary.js.map +1 -0
  98. package/lib/commonjs/ui/consent/label-value-rows.js +59 -0
  99. package/lib/commonjs/ui/consent/label-value-rows.js.map +1 -0
  100. package/lib/commonjs/ui/consent/multi-payment-rules-list.js +130 -0
  101. package/lib/commonjs/ui/consent/multi-payment-rules-list.js.map +1 -0
  102. package/lib/commonjs/ui/consent/multi-payment-summary.js +99 -0
  103. package/lib/commonjs/ui/consent/multi-payment-summary.js.map +1 -0
  104. package/lib/commonjs/ui/consent/single-payment-summary.js +158 -0
  105. package/lib/commonjs/ui/consent/single-payment-summary.js.map +1 -0
  106. package/lib/commonjs/ui/consent/terms-link.js +35 -0
  107. package/lib/commonjs/ui/consent/terms-link.js.map +1 -0
  108. package/lib/commonjs/ui/hooks/use-payment-flow-state.js +16 -0
  109. package/lib/commonjs/ui/hooks/use-payment-flow-state.js.map +1 -0
  110. package/lib/commonjs/ui/payment-flow-page.js +235 -0
  111. package/lib/commonjs/ui/payment-flow-page.js.map +1 -0
  112. package/lib/commonjs/ui/screens/bank-selection-screen.js +215 -0
  113. package/lib/commonjs/ui/screens/bank-selection-screen.js.map +1 -0
  114. package/lib/commonjs/ui/screens/consent-details-screen.js +124 -0
  115. package/lib/commonjs/ui/screens/consent-details-screen.js.map +1 -0
  116. package/lib/commonjs/ui/screens/index.js +48 -0
  117. package/lib/commonjs/ui/screens/index.js.map +1 -0
  118. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js +79 -0
  119. package/lib/commonjs/ui/screens/mandate-setup-success-screen.js.map +1 -0
  120. package/lib/commonjs/ui/screens/redirect-handoff-screen.js +42 -0
  121. package/lib/commonjs/ui/screens/redirect-handoff-screen.js.map +1 -0
  122. package/lib/commonjs/ui/screens/result-screen.js +83 -0
  123. package/lib/commonjs/ui/screens/result-screen.js.map +1 -0
  124. package/lib/commonjs/ui/screens/resume-processing-screen.js +109 -0
  125. package/lib/commonjs/ui/screens/resume-processing-screen.js.map +1 -0
  126. package/lib/commonjs/ui/spare-link-host.js +354 -0
  127. package/lib/commonjs/ui/spare-link-host.js.map +1 -0
  128. package/lib/commonjs/ui/theme/assets.js +20 -0
  129. package/lib/commonjs/ui/theme/assets.js.map +1 -0
  130. package/lib/commonjs/ui/theme/colors.js +36 -0
  131. package/lib/commonjs/ui/theme/colors.js.map +1 -0
  132. package/lib/commonjs/ui/theme/fonts.js +29 -0
  133. package/lib/commonjs/ui/theme/fonts.js.map +1 -0
  134. package/lib/commonjs/ui/theme/index.js +53 -0
  135. package/lib/commonjs/ui/theme/index.js.map +1 -0
  136. package/lib/commonjs/ui/theme/typography.js +76 -0
  137. package/lib/commonjs/ui/theme/typography.js.map +1 -0
  138. package/lib/commonjs/ui/widgets/footer.js +144 -0
  139. package/lib/commonjs/ui/widgets/footer.js.map +1 -0
  140. package/lib/commonjs/ui/widgets/gradient-spinner.js +172 -0
  141. package/lib/commonjs/ui/widgets/gradient-spinner.js.map +1 -0
  142. package/lib/commonjs/ui/widgets/handoff-screen-layout.js +77 -0
  143. package/lib/commonjs/ui/widgets/handoff-screen-layout.js.map +1 -0
  144. package/lib/commonjs/ui/widgets/index.js +41 -0
  145. package/lib/commonjs/ui/widgets/index.js.map +1 -0
  146. package/lib/commonjs/ui/widgets/layout-w-header.js +106 -0
  147. package/lib/commonjs/ui/widgets/layout-w-header.js.map +1 -0
  148. package/lib/commonjs/ui/widgets/modal-dismiss-button.js +47 -0
  149. package/lib/commonjs/ui/widgets/modal-dismiss-button.js.map +1 -0
  150. package/lib/commonjs/ui/widgets/stepper.js +124 -0
  151. package/lib/commonjs/ui/widgets/stepper.js.map +1 -0
  152. package/lib/commonjs/version.js +14 -0
  153. package/lib/commonjs/version.js.map +1 -0
  154. package/lib/module/core/client/link-api-client.js +292 -0
  155. package/lib/module/core/client/link-api-client.js.map +1 -0
  156. package/lib/module/core/errors/payment-api-error.js +29 -0
  157. package/lib/module/core/errors/payment-api-error.js.map +1 -0
  158. package/lib/module/core/models/index.js +2 -0
  159. package/lib/module/core/models/index.js.map +1 -0
  160. package/lib/module/core/models/link-session-status.js +10 -0
  161. package/lib/module/core/models/link-session-status.js.map +1 -0
  162. package/lib/module/core/models/payment-return-params.js +37 -0
  163. package/lib/module/core/models/payment-return-params.js.map +1 -0
  164. package/lib/module/core/models/payment-type.js +36 -0
  165. package/lib/module/core/models/payment-type.js.map +1 -0
  166. package/lib/module/core/models/wire-mappers.js +263 -0
  167. package/lib/module/core/models/wire-mappers.js.map +1 -0
  168. package/lib/module/core/services/consent-presenter.js +140 -0
  169. package/lib/module/core/services/consent-presenter.js.map +1 -0
  170. package/lib/module/core/services/execute-resume-if-needed.js +211 -0
  171. package/lib/module/core/services/execute-resume-if-needed.js.map +1 -0
  172. package/lib/module/core/services/multi-payment-rules-presenter.js +146 -0
  173. package/lib/module/core/services/multi-payment-rules-presenter.js.map +1 -0
  174. package/lib/module/core/services/payment-flow-controller.js +544 -0
  175. package/lib/module/core/services/payment-flow-controller.js.map +1 -0
  176. package/lib/module/core/services/payment-flow-state.js +106 -0
  177. package/lib/module/core/services/payment-flow-state.js.map +1 -0
  178. package/lib/module/core/services/payment-result-mapper.js +45 -0
  179. package/lib/module/core/services/payment-result-mapper.js.map +1 -0
  180. package/lib/module/core/services/pending-session-store.js +4 -0
  181. package/lib/module/core/services/pending-session-store.js.map +1 -0
  182. package/lib/module/core/services/presentation-utils.js +7 -0
  183. package/lib/module/core/services/presentation-utils.js.map +1 -0
  184. package/lib/module/core/services/redirect-buffer.js +33 -0
  185. package/lib/module/core/services/redirect-buffer.js.map +1 -0
  186. package/lib/module/core/services/user-friendly-messages.js +42 -0
  187. package/lib/module/core/services/user-friendly-messages.js.map +1 -0
  188. package/lib/module/index.js +40 -0
  189. package/lib/module/index.js.map +1 -0
  190. package/lib/module/internal/bank-redirect.js +49 -0
  191. package/lib/module/internal/bank-redirect.js.map +1 -0
  192. package/lib/module/internal/deep-link-listener.js +34 -0
  193. package/lib/module/internal/deep-link-listener.js.map +1 -0
  194. package/lib/module/internal/event-emitter.js +32 -0
  195. package/lib/module/internal/event-emitter.js.map +1 -0
  196. package/lib/module/internal/index.js +7 -0
  197. package/lib/module/internal/index.js.map +1 -0
  198. package/lib/module/internal/logger.js +61 -0
  199. package/lib/module/internal/logger.js.map +1 -0
  200. package/lib/module/internal/redact-uri.js +21 -0
  201. package/lib/module/internal/redact-uri.js.map +1 -0
  202. package/lib/module/internal/secure-store-pending-session-store.js +88 -0
  203. package/lib/module/internal/secure-store-pending-session-store.js.map +1 -0
  204. package/lib/module/internal/telemetry-collector.js +75 -0
  205. package/lib/module/internal/telemetry-collector.js.map +1 -0
  206. package/lib/module/package.json +1 -0
  207. package/lib/module/public/constants.js +17 -0
  208. package/lib/module/public/constants.js.map +1 -0
  209. package/lib/module/public/index.js +11 -0
  210. package/lib/module/public/index.js.map +1 -0
  211. package/lib/module/public/payment-result.js +41 -0
  212. package/lib/module/public/payment-result.js.map +1 -0
  213. package/lib/module/public/recovery-result.js +34 -0
  214. package/lib/module/public/recovery-result.js.map +1 -0
  215. package/lib/module/public/spare-link-callbacks.js +4 -0
  216. package/lib/module/public/spare-link-callbacks.js.map +1 -0
  217. package/lib/module/public/spare-link-config.js +54 -0
  218. package/lib/module/public/spare-link-config.js.map +1 -0
  219. package/lib/module/public/spare-link-event.js +115 -0
  220. package/lib/module/public/spare-link-event.js.map +1 -0
  221. package/lib/module/public/spare-link-host-api.js +4 -0
  222. package/lib/module/public/spare-link-host-api.js.map +1 -0
  223. package/lib/module/public/spare-link-instance.js +273 -0
  224. package/lib/module/public/spare-link-instance.js.map +1 -0
  225. package/lib/module/public/spare-link-session.js +21 -0
  226. package/lib/module/public/spare-link-session.js.map +1 -0
  227. package/lib/module/public/spare-link.js +4 -0
  228. package/lib/module/public/spare-link.js.map +1 -0
  229. package/lib/module/ui/consent/charge-bearer-display.js +95 -0
  230. package/lib/module/ui/consent/charge-bearer-display.js.map +1 -0
  231. package/lib/module/ui/consent/consent-accordion.js +90 -0
  232. package/lib/module/ui/consent/consent-accordion.js.map +1 -0
  233. package/lib/module/ui/consent/consent-summary-section.js +23 -0
  234. package/lib/module/ui/consent/consent-summary-section.js.map +1 -0
  235. package/lib/module/ui/consent/cop-information.js +165 -0
  236. package/lib/module/ui/consent/cop-information.js.map +1 -0
  237. package/lib/module/ui/consent/international-payment-summary.js +94 -0
  238. package/lib/module/ui/consent/international-payment-summary.js.map +1 -0
  239. package/lib/module/ui/consent/label-value-rows.js +55 -0
  240. package/lib/module/ui/consent/label-value-rows.js.map +1 -0
  241. package/lib/module/ui/consent/multi-payment-rules-list.js +125 -0
  242. package/lib/module/ui/consent/multi-payment-rules-list.js.map +1 -0
  243. package/lib/module/ui/consent/multi-payment-summary.js +95 -0
  244. package/lib/module/ui/consent/multi-payment-summary.js.map +1 -0
  245. package/lib/module/ui/consent/single-payment-summary.js +154 -0
  246. package/lib/module/ui/consent/single-payment-summary.js.map +1 -0
  247. package/lib/module/ui/consent/terms-link.js +31 -0
  248. package/lib/module/ui/consent/terms-link.js.map +1 -0
  249. package/lib/module/ui/hooks/use-payment-flow-state.js +12 -0
  250. package/lib/module/ui/hooks/use-payment-flow-state.js.map +1 -0
  251. package/lib/module/ui/payment-flow-page.js +232 -0
  252. package/lib/module/ui/payment-flow-page.js.map +1 -0
  253. package/lib/module/ui/screens/bank-selection-screen.js +211 -0
  254. package/lib/module/ui/screens/bank-selection-screen.js.map +1 -0
  255. package/lib/module/ui/screens/consent-details-screen.js +120 -0
  256. package/lib/module/ui/screens/consent-details-screen.js.map +1 -0
  257. package/lib/module/ui/screens/index.js +9 -0
  258. package/lib/module/ui/screens/index.js.map +1 -0
  259. package/lib/module/ui/screens/mandate-setup-success-screen.js +75 -0
  260. package/lib/module/ui/screens/mandate-setup-success-screen.js.map +1 -0
  261. package/lib/module/ui/screens/redirect-handoff-screen.js +39 -0
  262. package/lib/module/ui/screens/redirect-handoff-screen.js.map +1 -0
  263. package/lib/module/ui/screens/result-screen.js +79 -0
  264. package/lib/module/ui/screens/result-screen.js.map +1 -0
  265. package/lib/module/ui/screens/resume-processing-screen.js +105 -0
  266. package/lib/module/ui/screens/resume-processing-screen.js.map +1 -0
  267. package/lib/module/ui/spare-link-host.js +350 -0
  268. package/lib/module/ui/spare-link-host.js.map +1 -0
  269. package/lib/module/ui/theme/assets.js +16 -0
  270. package/lib/module/ui/theme/assets.js.map +1 -0
  271. package/lib/module/ui/theme/colors.js +32 -0
  272. package/lib/module/ui/theme/colors.js.map +1 -0
  273. package/lib/module/ui/theme/fonts.js +23 -0
  274. package/lib/module/ui/theme/fonts.js.map +1 -0
  275. package/lib/module/ui/theme/index.js +13 -0
  276. package/lib/module/ui/theme/index.js.map +1 -0
  277. package/lib/module/ui/theme/typography.js +49 -0
  278. package/lib/module/ui/theme/typography.js.map +1 -0
  279. package/lib/module/ui/widgets/footer.js +140 -0
  280. package/lib/module/ui/widgets/footer.js.map +1 -0
  281. package/lib/module/ui/widgets/gradient-spinner.js +168 -0
  282. package/lib/module/ui/widgets/gradient-spinner.js.map +1 -0
  283. package/lib/module/ui/widgets/handoff-screen-layout.js +73 -0
  284. package/lib/module/ui/widgets/handoff-screen-layout.js.map +1 -0
  285. package/lib/module/ui/widgets/index.js +8 -0
  286. package/lib/module/ui/widgets/index.js.map +1 -0
  287. package/lib/module/ui/widgets/layout-w-header.js +102 -0
  288. package/lib/module/ui/widgets/layout-w-header.js.map +1 -0
  289. package/lib/module/ui/widgets/modal-dismiss-button.js +43 -0
  290. package/lib/module/ui/widgets/modal-dismiss-button.js.map +1 -0
  291. package/lib/module/ui/widgets/stepper.js +120 -0
  292. package/lib/module/ui/widgets/stepper.js.map +1 -0
  293. package/lib/module/version.js +10 -0
  294. package/lib/module/version.js.map +1 -0
  295. package/lib/typescript/commonjs/core/client/link-api-client.d.ts +70 -0
  296. package/lib/typescript/commonjs/core/client/link-api-client.d.ts.map +1 -0
  297. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts +15 -0
  298. package/lib/typescript/commonjs/core/errors/payment-api-error.d.ts.map +1 -0
  299. package/lib/typescript/commonjs/core/models/index.d.ts +124 -0
  300. package/lib/typescript/commonjs/core/models/index.d.ts.map +1 -0
  301. package/lib/typescript/commonjs/core/models/link-session-status.d.ts +6 -0
  302. package/lib/typescript/commonjs/core/models/link-session-status.d.ts.map +1 -0
  303. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts +15 -0
  304. package/lib/typescript/commonjs/core/models/payment-return-params.d.ts.map +1 -0
  305. package/lib/typescript/commonjs/core/models/payment-type.d.ts +18 -0
  306. package/lib/typescript/commonjs/core/models/payment-type.d.ts.map +1 -0
  307. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts +19 -0
  308. package/lib/typescript/commonjs/core/models/wire-mappers.d.ts.map +1 -0
  309. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts +67 -0
  310. package/lib/typescript/commonjs/core/services/consent-presenter.d.ts.map +1 -0
  311. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts +32 -0
  312. package/lib/typescript/commonjs/core/services/execute-resume-if-needed.d.ts.map +1 -0
  313. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts +9 -0
  314. package/lib/typescript/commonjs/core/services/multi-payment-rules-presenter.d.ts.map +1 -0
  315. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts +146 -0
  316. package/lib/typescript/commonjs/core/services/payment-flow-controller.d.ts.map +1 -0
  317. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts +64 -0
  318. package/lib/typescript/commonjs/core/services/payment-flow-state.d.ts.map +1 -0
  319. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts +5 -0
  320. package/lib/typescript/commonjs/core/services/payment-result-mapper.d.ts.map +1 -0
  321. package/lib/typescript/commonjs/core/services/pending-session-store.d.ts +12 -0
  322. package/lib/typescript/commonjs/core/services/pending-session-store.d.ts.map +1 -0
  323. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts +5 -0
  324. package/lib/typescript/commonjs/core/services/presentation-utils.d.ts.map +1 -0
  325. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts +6 -0
  326. package/lib/typescript/commonjs/core/services/redirect-buffer.d.ts.map +1 -0
  327. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts +6 -0
  328. package/lib/typescript/commonjs/core/services/user-friendly-messages.d.ts.map +1 -0
  329. package/lib/typescript/commonjs/index.d.ts +19 -0
  330. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  331. package/lib/typescript/commonjs/internal/bank-redirect.d.ts +6 -0
  332. package/lib/typescript/commonjs/internal/bank-redirect.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/internal/deep-link-listener.d.ts +3 -0
  334. package/lib/typescript/commonjs/internal/deep-link-listener.d.ts.map +1 -0
  335. package/lib/typescript/commonjs/internal/event-emitter.d.ts +13 -0
  336. package/lib/typescript/commonjs/internal/event-emitter.d.ts.map +1 -0
  337. package/lib/typescript/commonjs/internal/index.d.ts +5 -0
  338. package/lib/typescript/commonjs/internal/index.d.ts.map +1 -0
  339. package/lib/typescript/commonjs/internal/logger.d.ts +23 -0
  340. package/lib/typescript/commonjs/internal/logger.d.ts.map +1 -0
  341. package/lib/typescript/commonjs/internal/redact-uri.d.ts +3 -0
  342. package/lib/typescript/commonjs/internal/redact-uri.d.ts.map +1 -0
  343. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts +33 -0
  344. package/lib/typescript/commonjs/internal/secure-store-pending-session-store.d.ts.map +1 -0
  345. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts +2 -0
  346. package/lib/typescript/commonjs/internal/telemetry-collector.d.ts.map +1 -0
  347. package/lib/typescript/commonjs/package.json +1 -0
  348. package/lib/typescript/commonjs/public/constants.d.ts +12 -0
  349. package/lib/typescript/commonjs/public/constants.d.ts.map +1 -0
  350. package/lib/typescript/commonjs/public/index.d.ts +11 -0
  351. package/lib/typescript/commonjs/public/index.d.ts.map +1 -0
  352. package/lib/typescript/commonjs/public/payment-result.d.ts +43 -0
  353. package/lib/typescript/commonjs/public/payment-result.d.ts.map +1 -0
  354. package/lib/typescript/commonjs/public/recovery-result.d.ts +36 -0
  355. package/lib/typescript/commonjs/public/recovery-result.d.ts.map +1 -0
  356. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts +14 -0
  357. package/lib/typescript/commonjs/public/spare-link-callbacks.d.ts.map +1 -0
  358. package/lib/typescript/commonjs/public/spare-link-config.d.ts +49 -0
  359. package/lib/typescript/commonjs/public/spare-link-config.d.ts.map +1 -0
  360. package/lib/typescript/commonjs/public/spare-link-event.d.ts +90 -0
  361. package/lib/typescript/commonjs/public/spare-link-event.d.ts.map +1 -0
  362. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts +29 -0
  363. package/lib/typescript/commonjs/public/spare-link-host-api.d.ts.map +1 -0
  364. package/lib/typescript/commonjs/public/spare-link-instance.d.ts +89 -0
  365. package/lib/typescript/commonjs/public/spare-link-instance.d.ts.map +1 -0
  366. package/lib/typescript/commonjs/public/spare-link-session.d.ts +20 -0
  367. package/lib/typescript/commonjs/public/spare-link-session.d.ts.map +1 -0
  368. package/lib/typescript/commonjs/public/spare-link.d.ts +3 -0
  369. package/lib/typescript/commonjs/public/spare-link.d.ts.map +1 -0
  370. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts +5 -0
  371. package/lib/typescript/commonjs/ui/consent/charge-bearer-display.d.ts.map +1 -0
  372. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts +10 -0
  373. package/lib/typescript/commonjs/ui/consent/consent-accordion.d.ts.map +1 -0
  374. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts +6 -0
  375. package/lib/typescript/commonjs/ui/consent/consent-summary-section.d.ts.map +1 -0
  376. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts +6 -0
  377. package/lib/typescript/commonjs/ui/consent/cop-information.d.ts.map +1 -0
  378. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts +6 -0
  379. package/lib/typescript/commonjs/ui/consent/international-payment-summary.d.ts.map +1 -0
  380. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts +10 -0
  381. package/lib/typescript/commonjs/ui/consent/label-value-rows.d.ts.map +1 -0
  382. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts +15 -0
  383. package/lib/typescript/commonjs/ui/consent/multi-payment-rules-list.d.ts.map +1 -0
  384. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts +6 -0
  385. package/lib/typescript/commonjs/ui/consent/multi-payment-summary.d.ts.map +1 -0
  386. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts +6 -0
  387. package/lib/typescript/commonjs/ui/consent/single-payment-summary.d.ts.map +1 -0
  388. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts +2 -0
  389. package/lib/typescript/commonjs/ui/consent/terms-link.d.ts.map +1 -0
  390. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts +9 -0
  391. package/lib/typescript/commonjs/ui/hooks/use-payment-flow-state.d.ts.map +1 -0
  392. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts +20 -0
  393. package/lib/typescript/commonjs/ui/payment-flow-page.d.ts.map +1 -0
  394. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts +15 -0
  395. package/lib/typescript/commonjs/ui/screens/bank-selection-screen.d.ts.map +1 -0
  396. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts +13 -0
  397. package/lib/typescript/commonjs/ui/screens/consent-details-screen.d.ts.map +1 -0
  398. package/lib/typescript/commonjs/ui/screens/index.d.ts +7 -0
  399. package/lib/typescript/commonjs/ui/screens/index.d.ts.map +1 -0
  400. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts +10 -0
  401. package/lib/typescript/commonjs/ui/screens/mandate-setup-success-screen.d.ts.map +1 -0
  402. package/lib/typescript/commonjs/ui/screens/redirect-handoff-screen.d.ts +3 -0
  403. package/lib/typescript/commonjs/ui/screens/redirect-handoff-screen.d.ts.map +1 -0
  404. package/lib/typescript/commonjs/ui/screens/result-screen.d.ts +7 -0
  405. package/lib/typescript/commonjs/ui/screens/result-screen.d.ts.map +1 -0
  406. package/lib/typescript/commonjs/ui/screens/resume-processing-screen.d.ts +10 -0
  407. package/lib/typescript/commonjs/ui/screens/resume-processing-screen.d.ts.map +1 -0
  408. package/lib/typescript/commonjs/ui/spare-link-host.d.ts +23 -0
  409. package/lib/typescript/commonjs/ui/spare-link-host.d.ts.map +1 -0
  410. package/lib/typescript/commonjs/ui/theme/assets.d.ts +15 -0
  411. package/lib/typescript/commonjs/ui/theme/assets.d.ts.map +1 -0
  412. package/lib/typescript/commonjs/ui/theme/colors.d.ts +31 -0
  413. package/lib/typescript/commonjs/ui/theme/colors.d.ts.map +1 -0
  414. package/lib/typescript/commonjs/ui/theme/fonts.d.ts +12 -0
  415. package/lib/typescript/commonjs/ui/theme/fonts.d.ts.map +1 -0
  416. package/lib/typescript/commonjs/ui/theme/index.d.ts +11 -0
  417. package/lib/typescript/commonjs/ui/theme/index.d.ts.map +1 -0
  418. package/lib/typescript/commonjs/ui/theme/typography.d.ts +12 -0
  419. package/lib/typescript/commonjs/ui/theme/typography.d.ts.map +1 -0
  420. package/lib/typescript/commonjs/ui/widgets/footer.d.ts +23 -0
  421. package/lib/typescript/commonjs/ui/widgets/footer.d.ts.map +1 -0
  422. package/lib/typescript/commonjs/ui/widgets/gradient-spinner.d.ts +13 -0
  423. package/lib/typescript/commonjs/ui/widgets/gradient-spinner.d.ts.map +1 -0
  424. package/lib/typescript/commonjs/ui/widgets/handoff-screen-layout.d.ts +11 -0
  425. package/lib/typescript/commonjs/ui/widgets/handoff-screen-layout.d.ts.map +1 -0
  426. package/lib/typescript/commonjs/ui/widgets/index.d.ts +6 -0
  427. package/lib/typescript/commonjs/ui/widgets/index.d.ts.map +1 -0
  428. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts +20 -0
  429. package/lib/typescript/commonjs/ui/widgets/layout-w-header.d.ts.map +1 -0
  430. package/lib/typescript/commonjs/ui/widgets/modal-dismiss-button.d.ts +6 -0
  431. package/lib/typescript/commonjs/ui/widgets/modal-dismiss-button.d.ts.map +1 -0
  432. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts +15 -0
  433. package/lib/typescript/commonjs/ui/widgets/stepper.d.ts.map +1 -0
  434. package/lib/typescript/commonjs/version.d.ts +8 -0
  435. package/lib/typescript/commonjs/version.d.ts.map +1 -0
  436. package/lib/typescript/module/core/client/link-api-client.d.ts +70 -0
  437. package/lib/typescript/module/core/client/link-api-client.d.ts.map +1 -0
  438. package/lib/typescript/module/core/errors/payment-api-error.d.ts +15 -0
  439. package/lib/typescript/module/core/errors/payment-api-error.d.ts.map +1 -0
  440. package/lib/typescript/module/core/models/index.d.ts +124 -0
  441. package/lib/typescript/module/core/models/index.d.ts.map +1 -0
  442. package/lib/typescript/module/core/models/link-session-status.d.ts +6 -0
  443. package/lib/typescript/module/core/models/link-session-status.d.ts.map +1 -0
  444. package/lib/typescript/module/core/models/payment-return-params.d.ts +15 -0
  445. package/lib/typescript/module/core/models/payment-return-params.d.ts.map +1 -0
  446. package/lib/typescript/module/core/models/payment-type.d.ts +18 -0
  447. package/lib/typescript/module/core/models/payment-type.d.ts.map +1 -0
  448. package/lib/typescript/module/core/models/wire-mappers.d.ts +19 -0
  449. package/lib/typescript/module/core/models/wire-mappers.d.ts.map +1 -0
  450. package/lib/typescript/module/core/services/consent-presenter.d.ts +67 -0
  451. package/lib/typescript/module/core/services/consent-presenter.d.ts.map +1 -0
  452. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts +32 -0
  453. package/lib/typescript/module/core/services/execute-resume-if-needed.d.ts.map +1 -0
  454. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts +9 -0
  455. package/lib/typescript/module/core/services/multi-payment-rules-presenter.d.ts.map +1 -0
  456. package/lib/typescript/module/core/services/payment-flow-controller.d.ts +146 -0
  457. package/lib/typescript/module/core/services/payment-flow-controller.d.ts.map +1 -0
  458. package/lib/typescript/module/core/services/payment-flow-state.d.ts +64 -0
  459. package/lib/typescript/module/core/services/payment-flow-state.d.ts.map +1 -0
  460. package/lib/typescript/module/core/services/payment-result-mapper.d.ts +5 -0
  461. package/lib/typescript/module/core/services/payment-result-mapper.d.ts.map +1 -0
  462. package/lib/typescript/module/core/services/pending-session-store.d.ts +12 -0
  463. package/lib/typescript/module/core/services/pending-session-store.d.ts.map +1 -0
  464. package/lib/typescript/module/core/services/presentation-utils.d.ts +5 -0
  465. package/lib/typescript/module/core/services/presentation-utils.d.ts.map +1 -0
  466. package/lib/typescript/module/core/services/redirect-buffer.d.ts +6 -0
  467. package/lib/typescript/module/core/services/redirect-buffer.d.ts.map +1 -0
  468. package/lib/typescript/module/core/services/user-friendly-messages.d.ts +6 -0
  469. package/lib/typescript/module/core/services/user-friendly-messages.d.ts.map +1 -0
  470. package/lib/typescript/module/index.d.ts +19 -0
  471. package/lib/typescript/module/index.d.ts.map +1 -0
  472. package/lib/typescript/module/internal/bank-redirect.d.ts +6 -0
  473. package/lib/typescript/module/internal/bank-redirect.d.ts.map +1 -0
  474. package/lib/typescript/module/internal/deep-link-listener.d.ts +3 -0
  475. package/lib/typescript/module/internal/deep-link-listener.d.ts.map +1 -0
  476. package/lib/typescript/module/internal/event-emitter.d.ts +13 -0
  477. package/lib/typescript/module/internal/event-emitter.d.ts.map +1 -0
  478. package/lib/typescript/module/internal/index.d.ts +5 -0
  479. package/lib/typescript/module/internal/index.d.ts.map +1 -0
  480. package/lib/typescript/module/internal/logger.d.ts +23 -0
  481. package/lib/typescript/module/internal/logger.d.ts.map +1 -0
  482. package/lib/typescript/module/internal/redact-uri.d.ts +3 -0
  483. package/lib/typescript/module/internal/redact-uri.d.ts.map +1 -0
  484. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts +33 -0
  485. package/lib/typescript/module/internal/secure-store-pending-session-store.d.ts.map +1 -0
  486. package/lib/typescript/module/internal/telemetry-collector.d.ts +2 -0
  487. package/lib/typescript/module/internal/telemetry-collector.d.ts.map +1 -0
  488. package/lib/typescript/module/package.json +1 -0
  489. package/lib/typescript/module/public/constants.d.ts +12 -0
  490. package/lib/typescript/module/public/constants.d.ts.map +1 -0
  491. package/lib/typescript/module/public/index.d.ts +11 -0
  492. package/lib/typescript/module/public/index.d.ts.map +1 -0
  493. package/lib/typescript/module/public/payment-result.d.ts +43 -0
  494. package/lib/typescript/module/public/payment-result.d.ts.map +1 -0
  495. package/lib/typescript/module/public/recovery-result.d.ts +36 -0
  496. package/lib/typescript/module/public/recovery-result.d.ts.map +1 -0
  497. package/lib/typescript/module/public/spare-link-callbacks.d.ts +14 -0
  498. package/lib/typescript/module/public/spare-link-callbacks.d.ts.map +1 -0
  499. package/lib/typescript/module/public/spare-link-config.d.ts +49 -0
  500. package/lib/typescript/module/public/spare-link-config.d.ts.map +1 -0
  501. package/lib/typescript/module/public/spare-link-event.d.ts +90 -0
  502. package/lib/typescript/module/public/spare-link-event.d.ts.map +1 -0
  503. package/lib/typescript/module/public/spare-link-host-api.d.ts +29 -0
  504. package/lib/typescript/module/public/spare-link-host-api.d.ts.map +1 -0
  505. package/lib/typescript/module/public/spare-link-instance.d.ts +89 -0
  506. package/lib/typescript/module/public/spare-link-instance.d.ts.map +1 -0
  507. package/lib/typescript/module/public/spare-link-session.d.ts +20 -0
  508. package/lib/typescript/module/public/spare-link-session.d.ts.map +1 -0
  509. package/lib/typescript/module/public/spare-link.d.ts +3 -0
  510. package/lib/typescript/module/public/spare-link.d.ts.map +1 -0
  511. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts +5 -0
  512. package/lib/typescript/module/ui/consent/charge-bearer-display.d.ts.map +1 -0
  513. package/lib/typescript/module/ui/consent/consent-accordion.d.ts +10 -0
  514. package/lib/typescript/module/ui/consent/consent-accordion.d.ts.map +1 -0
  515. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts +6 -0
  516. package/lib/typescript/module/ui/consent/consent-summary-section.d.ts.map +1 -0
  517. package/lib/typescript/module/ui/consent/cop-information.d.ts +6 -0
  518. package/lib/typescript/module/ui/consent/cop-information.d.ts.map +1 -0
  519. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts +6 -0
  520. package/lib/typescript/module/ui/consent/international-payment-summary.d.ts.map +1 -0
  521. package/lib/typescript/module/ui/consent/label-value-rows.d.ts +10 -0
  522. package/lib/typescript/module/ui/consent/label-value-rows.d.ts.map +1 -0
  523. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts +15 -0
  524. package/lib/typescript/module/ui/consent/multi-payment-rules-list.d.ts.map +1 -0
  525. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts +6 -0
  526. package/lib/typescript/module/ui/consent/multi-payment-summary.d.ts.map +1 -0
  527. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts +6 -0
  528. package/lib/typescript/module/ui/consent/single-payment-summary.d.ts.map +1 -0
  529. package/lib/typescript/module/ui/consent/terms-link.d.ts +2 -0
  530. package/lib/typescript/module/ui/consent/terms-link.d.ts.map +1 -0
  531. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts +9 -0
  532. package/lib/typescript/module/ui/hooks/use-payment-flow-state.d.ts.map +1 -0
  533. package/lib/typescript/module/ui/payment-flow-page.d.ts +20 -0
  534. package/lib/typescript/module/ui/payment-flow-page.d.ts.map +1 -0
  535. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts +15 -0
  536. package/lib/typescript/module/ui/screens/bank-selection-screen.d.ts.map +1 -0
  537. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts +13 -0
  538. package/lib/typescript/module/ui/screens/consent-details-screen.d.ts.map +1 -0
  539. package/lib/typescript/module/ui/screens/index.d.ts +7 -0
  540. package/lib/typescript/module/ui/screens/index.d.ts.map +1 -0
  541. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts +10 -0
  542. package/lib/typescript/module/ui/screens/mandate-setup-success-screen.d.ts.map +1 -0
  543. package/lib/typescript/module/ui/screens/redirect-handoff-screen.d.ts +3 -0
  544. package/lib/typescript/module/ui/screens/redirect-handoff-screen.d.ts.map +1 -0
  545. package/lib/typescript/module/ui/screens/result-screen.d.ts +7 -0
  546. package/lib/typescript/module/ui/screens/result-screen.d.ts.map +1 -0
  547. package/lib/typescript/module/ui/screens/resume-processing-screen.d.ts +10 -0
  548. package/lib/typescript/module/ui/screens/resume-processing-screen.d.ts.map +1 -0
  549. package/lib/typescript/module/ui/spare-link-host.d.ts +23 -0
  550. package/lib/typescript/module/ui/spare-link-host.d.ts.map +1 -0
  551. package/lib/typescript/module/ui/theme/assets.d.ts +15 -0
  552. package/lib/typescript/module/ui/theme/assets.d.ts.map +1 -0
  553. package/lib/typescript/module/ui/theme/colors.d.ts +31 -0
  554. package/lib/typescript/module/ui/theme/colors.d.ts.map +1 -0
  555. package/lib/typescript/module/ui/theme/fonts.d.ts +12 -0
  556. package/lib/typescript/module/ui/theme/fonts.d.ts.map +1 -0
  557. package/lib/typescript/module/ui/theme/index.d.ts +11 -0
  558. package/lib/typescript/module/ui/theme/index.d.ts.map +1 -0
  559. package/lib/typescript/module/ui/theme/typography.d.ts +12 -0
  560. package/lib/typescript/module/ui/theme/typography.d.ts.map +1 -0
  561. package/lib/typescript/module/ui/widgets/footer.d.ts +23 -0
  562. package/lib/typescript/module/ui/widgets/footer.d.ts.map +1 -0
  563. package/lib/typescript/module/ui/widgets/gradient-spinner.d.ts +13 -0
  564. package/lib/typescript/module/ui/widgets/gradient-spinner.d.ts.map +1 -0
  565. package/lib/typescript/module/ui/widgets/handoff-screen-layout.d.ts +11 -0
  566. package/lib/typescript/module/ui/widgets/handoff-screen-layout.d.ts.map +1 -0
  567. package/lib/typescript/module/ui/widgets/index.d.ts +6 -0
  568. package/lib/typescript/module/ui/widgets/index.d.ts.map +1 -0
  569. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts +20 -0
  570. package/lib/typescript/module/ui/widgets/layout-w-header.d.ts.map +1 -0
  571. package/lib/typescript/module/ui/widgets/modal-dismiss-button.d.ts +6 -0
  572. package/lib/typescript/module/ui/widgets/modal-dismiss-button.d.ts.map +1 -0
  573. package/lib/typescript/module/ui/widgets/stepper.d.ts +15 -0
  574. package/lib/typescript/module/ui/widgets/stepper.d.ts.map +1 -0
  575. package/lib/typescript/module/version.d.ts +8 -0
  576. package/lib/typescript/module/version.d.ts.map +1 -0
  577. package/package.json +124 -0
  578. package/plugins/with-spare-link.js +98 -0
  579. package/src/core/client/link-api-client.ts +414 -0
  580. package/src/core/errors/payment-api-error.ts +35 -0
  581. package/src/core/models/index.ts +139 -0
  582. package/src/core/models/link-session-status.ts +7 -0
  583. package/src/core/models/payment-return-params.ts +34 -0
  584. package/src/core/models/payment-type.ts +54 -0
  585. package/src/core/models/wire-mappers.ts +315 -0
  586. package/src/core/services/consent-presenter.ts +213 -0
  587. package/src/core/services/execute-resume-if-needed.ts +243 -0
  588. package/src/core/services/multi-payment-rules-presenter.ts +158 -0
  589. package/src/core/services/payment-flow-controller.ts +607 -0
  590. package/src/core/services/payment-flow-state.ts +124 -0
  591. package/src/core/services/payment-result-mapper.ts +41 -0
  592. package/src/core/services/pending-session-store.ts +12 -0
  593. package/src/core/services/presentation-utils.ts +4 -0
  594. package/src/core/services/redirect-buffer.ts +34 -0
  595. package/src/core/services/user-friendly-messages.ts +39 -0
  596. package/src/index.ts +115 -0
  597. package/src/internal/bank-redirect.ts +61 -0
  598. package/src/internal/deep-link-listener.ts +31 -0
  599. package/src/internal/event-emitter.ts +42 -0
  600. package/src/internal/index.ts +4 -0
  601. package/src/internal/logger.ts +81 -0
  602. package/src/internal/redact-uri.ts +18 -0
  603. package/src/internal/secure-store-pending-session-store.ts +131 -0
  604. package/src/internal/telemetry-collector.ts +90 -0
  605. package/src/public/constants.ts +14 -0
  606. package/src/public/index.ts +80 -0
  607. package/src/public/payment-result.ts +61 -0
  608. package/src/public/recovery-result.ts +49 -0
  609. package/src/public/spare-link-callbacks.ts +20 -0
  610. package/src/public/spare-link-config.ts +87 -0
  611. package/src/public/spare-link-event.ts +146 -0
  612. package/src/public/spare-link-host-api.ts +28 -0
  613. package/src/public/spare-link-instance.ts +289 -0
  614. package/src/public/spare-link-session.ts +28 -0
  615. package/src/public/spare-link.ts +2 -0
  616. package/src/ui/consent/charge-bearer-display.tsx +68 -0
  617. package/src/ui/consent/consent-accordion.tsx +89 -0
  618. package/src/ui/consent/consent-summary-section.tsx +19 -0
  619. package/src/ui/consent/cop-information.tsx +121 -0
  620. package/src/ui/consent/international-payment-summary.tsx +83 -0
  621. package/src/ui/consent/label-value-rows.tsx +50 -0
  622. package/src/ui/consent/multi-payment-rules-list.tsx +138 -0
  623. package/src/ui/consent/multi-payment-summary.tsx +82 -0
  624. package/src/ui/consent/single-payment-summary.tsx +123 -0
  625. package/src/ui/consent/terms-link.tsx +27 -0
  626. package/src/ui/hooks/use-payment-flow-state.ts +16 -0
  627. package/src/ui/payment-flow-page.tsx +254 -0
  628. package/src/ui/screens/bank-selection-screen.tsx +209 -0
  629. package/src/ui/screens/consent-details-screen.tsx +106 -0
  630. package/src/ui/screens/index.ts +12 -0
  631. package/src/ui/screens/mandate-setup-success-screen.tsx +72 -0
  632. package/src/ui/screens/redirect-handoff-screen.tsx +33 -0
  633. package/src/ui/screens/result-screen.tsx +71 -0
  634. package/src/ui/screens/resume-processing-screen.tsx +111 -0
  635. package/src/ui/spare-link-host.tsx +394 -0
  636. package/src/ui/theme/assets.ts +17 -0
  637. package/src/ui/theme/colors.ts +32 -0
  638. package/src/ui/theme/fonts.ts +25 -0
  639. package/src/ui/theme/index.ts +11 -0
  640. package/src/ui/theme/typography.ts +47 -0
  641. package/src/ui/widgets/footer.tsx +138 -0
  642. package/src/ui/widgets/gradient-spinner.tsx +156 -0
  643. package/src/ui/widgets/handoff-screen-layout.tsx +70 -0
  644. package/src/ui/widgets/index.ts +5 -0
  645. package/src/ui/widgets/layout-w-header.tsx +89 -0
  646. package/src/ui/widgets/modal-dismiss-button.tsx +44 -0
  647. package/src/ui/widgets/stepper.tsx +126 -0
  648. package/src/version.ts +7 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secure-store-pending-session-store.d.ts","sourceRoot":"","sources":["../../../../src/internal/secure-store-pending-session-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAAwC,CAAC;AAclF,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAcD,qBAAa,8BAA+B,YAAW,mBAAmB;IACxE,OAAO,CAAC,WAAW,CAA2C;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAC1D;;;OAGG;IACH,OAAO,CAAC,UAAU,CAAoC;IAEtD;;;;OAIG;gBACS,YAAY,GAAE,MAAM,OAAO,CAAC,iBAAiB,CAAiB;IAI1E,OAAO,KAAK,MAAM,GAGjB;IAED,kEAAkE;IAClE,OAAO,CAAC,YAAY;IAQpB,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB3C,IAAI,IAAI,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IA6BlD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAavB"}
@@ -0,0 +1,2 @@
1
+ export declare function collectTelemetry(): Promise<Record<string, unknown>>;
2
+ //# sourceMappingURL=telemetry-collector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry-collector.d.ts","sourceRoot":"","sources":["../../../../src/internal/telemetry-collector.ts"],"names":[],"mappings":"AA2CA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA8CzE"}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Max non-terminal `resumeIfNeeded` recovery attempts before the SDK gives up
3
+ * and resolves the flow as failed with code `recovery_exhausted`.
4
+ */
5
+ export declare const kMaxRecoveryAttempts: 3;
6
+ /** Default per-request HTTP timeout in milliseconds (15s). */
7
+ export declare const DEFAULT_REQUEST_TIMEOUT_MS: 15000;
8
+ /** How long the SDK waits for a bank callback before auto-failing with `session_timeout`. */
9
+ export declare const DEFAULT_AWAITING_CALLBACK_TIMEOUT_MS: number;
10
+ /** Polling interval while the flow is in awaitingCallback (status endpoint). */
11
+ export declare const DEFAULT_AWAITING_CALLBACK_POLL_MS = 10000;
12
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/public/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAG,CAAU,CAAC;AAE/C,8DAA8D;AAC9D,eAAO,MAAM,0BAA0B,EAAG,KAAe,CAAC;AAE1D,6FAA6F;AAC7F,eAAO,MAAM,oCAAoC,QAAgB,CAAC;AAElE,gFAAgF;AAChF,eAAO,MAAM,iCAAiC,QAAS,CAAC"}
@@ -0,0 +1,11 @@
1
+ export { type PaymentEnvironment, type SpareApiTenant, type SpareLinkConfig, type SpareLinkResumeConfig, defaultBaseUrlFor, tenantCountryCode, resolvedBaseUrl, resolvedResumeBaseUrl, assertValidConfig, } from './spare-link-config.js';
2
+ export { type SpareLinkEvent, type SpareLinkEventType, type SpareLinkInitialized, type SpareLinkSessionLoaded, type SpareLinkConsentStarted, type SpareLinkRedirectToBank, type SpareLinkBankCallbackReceived, type SpareLinkSucceeded, type SpareLinkFailed, type SpareLinkCancelled, type SpareLinkAbandoned, SPARE_LINK_EVENT_TYPES, isSpareLinkEvent, SpareLinkEvents, } from './spare-link-event.js';
3
+ export { type PaymentStatus, type PaymentResult, type PaymentSuccess, type PaymentCancelled, type PaymentFailed, type PaymentAbandoned, paymentSuccess, paymentCancelled, paymentFailed, paymentAbandoned, } from './payment-result.js';
4
+ export type { SpareLinkCallbacks, SpareLinkSuccessCallback, SpareLinkExitCallback, SpareLinkEventCallback, } from './spare-link-callbacks.js';
5
+ export type { RecoveryResult, NoRecoveryReason, NoRecoveryNeeded, SessionRecovered, RecoveryAwaitingUser, } from './recovery-result.js';
6
+ export { isSessionRecovered, isNoRecoveryNeeded, isRecoveryAwaitingUser, } from './recovery-result.js';
7
+ export { SpareLinkSession } from './spare-link-session.js';
8
+ export { SpareLink, type SpareLinkOptions } 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
+ export { configureSpareLinkLogging, createLogger, type SpareLinkLogLevel, type SpareLinkLogRecord, type SpareLinkLogSink, type SpareLinkLogger, } from '../internal/logger.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,wBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,EAClC,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,GAChB,MAAM,uBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,qBAAkB,CAAC;AAE1B,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,2BAAwB,CAAC;AAEhC,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,sBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,sBAAmB,CAAC;AAE3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAsB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAAuB,CAAC;AAEzE,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,oCAAoC,EACpC,iCAAiC,GAClC,MAAM,gBAAa,CAAC;AAErB,OAAO,EACL,yBAAyB,EACzB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,uBAAoB,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Terminal outcome of a payment flow — narrow on the `status` field.
3
+ */
4
+ export type PaymentStatus = 'success' | 'cancelled' | 'failed' | 'abandoned';
5
+ interface PaymentResultBase {
6
+ status: PaymentStatus;
7
+ /** The `link_token` JWS that identifies this payment flow. Mirrors Flutter's `linkToken`. */
8
+ linkToken: string;
9
+ bankId?: string;
10
+ linkSessionId?: string;
11
+ message?: string;
12
+ errorCode?: string;
13
+ resolvedAtMs?: number;
14
+ }
15
+ /** Payment completed at the bank. `exchangeCode` may be null when recovered
16
+ * via status polling (the bank delivered the code straight to the merchant
17
+ * backend, bypassing the SDK). */
18
+ export interface PaymentSuccess extends PaymentResultBase {
19
+ status: 'success';
20
+ exchangeCode?: string;
21
+ merchantRef?: string;
22
+ /** API payment type string (e.g. `FixedPeriodicSchedule`), when available. Mirrors Flutter's `paymentType`. */
23
+ paymentType?: string;
24
+ }
25
+ export interface PaymentCancelled extends PaymentResultBase {
26
+ status: 'cancelled';
27
+ }
28
+ /** Payment failed. Always has an `errorCode` so merchants can map to UI copy. */
29
+ export interface PaymentFailed extends PaymentResultBase {
30
+ status: 'failed';
31
+ errorCode: string;
32
+ }
33
+ /** Flow abandoned mid-flight (app killed, host removed the SDK navigator). */
34
+ export interface PaymentAbandoned extends PaymentResultBase {
35
+ status: 'abandoned';
36
+ }
37
+ export type PaymentResult = PaymentSuccess | PaymentCancelled | PaymentFailed | PaymentAbandoned;
38
+ export declare function paymentSuccess(args: Omit<PaymentSuccess, 'status'>): PaymentSuccess;
39
+ export declare function paymentCancelled(args: Omit<PaymentCancelled, 'status'>): PaymentCancelled;
40
+ export declare function paymentFailed(args: Omit<PaymentFailed, 'status'>): PaymentFailed;
41
+ export declare function paymentAbandoned(args: Omit<PaymentAbandoned, 'status'>): PaymentAbandoned;
42
+ export {};
43
+ //# sourceMappingURL=payment-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-result.d.ts","sourceRoot":"","sources":["../../../../src/public/payment-result.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE7E,UAAU,iBAAiB;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,6FAA6F;IAC7F,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;kCAEkC;AAClC,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,MAAM,EAAE,SAAS,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+GAA+G;IAC/G,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,iFAAiF;AACjF,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8EAA8E;AAC9E,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,gBAAgB,GAAG,aAAa,GAAG,gBAAgB,CAAC;AAIjG,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG,cAAc,CAEnF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG,gBAAgB,CAEzF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG,aAAa,CAEhF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG,gBAAgB,CAEzF"}
@@ -0,0 +1,36 @@
1
+ import type { PaymentResult } from './payment-result.js';
2
+ /**
3
+ * Why {@link SpareLink.resumeIfNeeded} did not recover a terminal session.
4
+ * Mirrors Flutter's `NoRecoveryReason`.
5
+ */
6
+ export type NoRecoveryReason = 'noPendingSession' | 'flowAlreadyActive' | 'persistenceUnavailable';
7
+ /**
8
+ * Outcome of {@link SpareLink.resumeIfNeeded}.
9
+ *
10
+ * Discriminated union aligned with Flutter's sealed `RecoveryResult`.
11
+ */
12
+ export type RecoveryResult = NoRecoveryNeeded | SessionRecovered | RecoveryAwaitingUser;
13
+ /** No pending session was recovered. */
14
+ export interface NoRecoveryNeeded {
15
+ readonly kind: 'none';
16
+ readonly reason: NoRecoveryReason;
17
+ }
18
+ /** A pending session was recovered to a terminal {@link PaymentResult}. */
19
+ export interface SessionRecovered {
20
+ readonly kind: 'recovered';
21
+ readonly result: PaymentResult;
22
+ }
23
+ /**
24
+ * A pending session is non-terminal and the SDK opened its recovery UI —
25
+ * the integrator should treat this as in-progress, not "nothing happened".
26
+ * The terminal outcome arrives later via `SpareLink.events` /
27
+ * `spareLink.emitTerminal`, not as a second `resumeIfNeeded` resolution.
28
+ */
29
+ export interface RecoveryAwaitingUser {
30
+ readonly kind: 'awaitingUser';
31
+ readonly linkToken: string;
32
+ }
33
+ export declare function isSessionRecovered(r: RecoveryResult): r is SessionRecovered;
34
+ export declare function isNoRecoveryNeeded(r: RecoveryResult): r is NoRecoveryNeeded;
35
+ export declare function isRecoveryAwaitingUser(r: RecoveryResult): r is RecoveryAwaitingUser;
36
+ //# sourceMappingURL=recovery-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery-result.d.ts","sourceRoot":"","sources":["../../../../src/public/recovery-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAEtD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,wBAAwB,CAAC;AAEnG;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,oBAAoB,CAAC;AAExF,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;CACnC;AAED,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,IAAI,gBAAgB,CAE3E;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,IAAI,gBAAgB,CAE3E;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,IAAI,oBAAoB,CAEnF"}
@@ -0,0 +1,14 @@
1
+ import type { PaymentResult } from './payment-result.js';
2
+ import type { SpareLinkEventType } from './spare-link-event.js';
3
+ /** Called on successful payment. Both args may be null when recovered. */
4
+ export type SpareLinkSuccessCallback = (exchangeCode: string | undefined, linkSessionId: string | undefined) => void;
5
+ /** Called when the flow resolves to any terminal state (success or failure). */
6
+ export type SpareLinkExitCallback = (result: PaymentResult) => void;
7
+ /** Called for intermediate lifecycle events (string tag). Best-effort — exceptions are caught. */
8
+ export type SpareLinkEventCallback = (event: SpareLinkEventType) => void;
9
+ export interface SpareLinkCallbacks {
10
+ onSuccess?: SpareLinkSuccessCallback;
11
+ onExit?: SpareLinkExitCallback;
12
+ onEvent?: SpareLinkEventCallback;
13
+ }
14
+ //# sourceMappingURL=spare-link-callbacks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-callbacks.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAoB,CAAC;AAE7D,0EAA0E;AAC1E,MAAM,MAAM,wBAAwB,GAAG,CACrC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,aAAa,EAAE,MAAM,GAAG,SAAS,KAC9B,IAAI,CAAC;AAEV,gFAAgF;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;AAEpE,kGAAkG;AAClG,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,wBAAwB,CAAC;IACrC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Deployment environment for the Spare Link API.
3
+ *
4
+ * Each value maps to a default base URL
5
+ * the SDK will hit unless `baseUrl` is overridden in {@link SpareLinkConfig}.
6
+ */
7
+ export type PaymentEnvironment = 'sandbox' | 'production';
8
+ export declare function defaultBaseUrlFor(env: PaymentEnvironment): string;
9
+ /** Spare API tenant — one country per tenant. */
10
+ export type SpareApiTenant = 'ksa' | 'uae' | 'bah';
11
+ export declare function tenantCountryCode(t: SpareApiTenant): string;
12
+ /** Configuration to start a Spare Link payment flow. */
13
+ export interface SpareLinkConfig {
14
+ /** One-time link token minted by the merchant backend via POST /link/token/payment. */
15
+ linkToken: string;
16
+ /** Target environment (sandbox vs production). */
17
+ environment: PaymentEnvironment;
18
+ /** Tenant (country). */
19
+ tenant: SpareApiTenant;
20
+ /**
21
+ * Override the base URL. Set only for local dev (e.g. `http://localhost:4000`)
22
+ * — production should rely on the environment-derived default.
23
+ */
24
+ baseUrl?: string;
25
+ /**
26
+ * Inject a custom fetch implementation for advanced cases (cert pinning,
27
+ * request logging). Defaults to `globalThis.fetch`.
28
+ */
29
+ fetch?: typeof fetch;
30
+ /** Per-request timeout in milliseconds. Defaults to 15000. */
31
+ requestTimeoutMs?: number;
32
+ }
33
+ /** Resolved base URL: explicit `baseUrl` if provided, else the environment default. */
34
+ export declare function resolvedBaseUrl(config: SpareLinkConfig): string;
35
+ /**
36
+ * Recovery config — like {@link SpareLinkConfig} but without `linkToken`
37
+ * (read from the persisted record).
38
+ */
39
+ export interface SpareLinkResumeConfig {
40
+ environment: PaymentEnvironment;
41
+ tenant: SpareApiTenant;
42
+ baseUrl?: string;
43
+ fetch?: typeof fetch;
44
+ requestTimeoutMs?: number;
45
+ }
46
+ export declare function resolvedResumeBaseUrl(config: SpareLinkResumeConfig): string;
47
+ /** Throws if a SpareLinkConfig is structurally invalid. */
48
+ export declare function assertValidConfig(config: SpareLinkConfig): void;
49
+ //# sourceMappingURL=spare-link-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-config.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,YAAY,CAAC;AAO1D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,CAEjE;AAED,iDAAiD;AACjD,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAQnD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAE3D;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,uFAAuF;IACvF,SAAS,EAAE,MAAM,CAAC;IAElB,kDAAkD;IAClD,WAAW,EAAE,kBAAkB,CAAC;IAEhC,wBAAwB;IACxB,MAAM,EAAE,cAAc,CAAC;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAErB,8DAA8D;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,kBAAkB,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAE3E;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAO/D"}
@@ -0,0 +1,90 @@
1
+ import type { PaymentResult } from './payment-result.js';
2
+ /**
3
+ * Lifecycle events emitted on {@link SpareLink.events}.
4
+ *
5
+ * This is a discriminated union (TypeScript's equivalent to Dart sealed classes).
6
+ * Use a switch on the `type` field for exhaustive handling:
7
+ *
8
+ * ```ts
9
+ * spareLink.events.subscribe((event) => {
10
+ * switch (event.type) {
11
+ * case 'initialized':
12
+ * console.log('Started flow for', event.linkToken);
13
+ * break;
14
+ * case 'sessionLoaded':
15
+ * console.log('Session loaded', event.linkSessionId);
16
+ * break;
17
+ * case 'succeeded':
18
+ * console.log('Payment succeeded', event.result.exchangeCode);
19
+ * break;
20
+ * // ...
21
+ * }
22
+ * });
23
+ * ```
24
+ */
25
+ export type SpareLinkEvent = SpareLinkInitialized | SpareLinkSessionLoaded | SpareLinkConsentStarted | SpareLinkRedirectToBank | SpareLinkBankCallbackReceived | SpareLinkSucceeded | SpareLinkFailed | SpareLinkCancelled | SpareLinkAbandoned;
26
+ /** The SDK has started a payment flow. */
27
+ export interface SpareLinkInitialized {
28
+ readonly type: 'initialized';
29
+ readonly linkToken: string;
30
+ }
31
+ /** The payment session was loaded from the server. */
32
+ export interface SpareLinkSessionLoaded {
33
+ readonly type: 'sessionLoaded';
34
+ readonly linkToken: string;
35
+ /** Server-assigned link session ID when available from the API. */
36
+ readonly linkSessionId?: string;
37
+ }
38
+ /** The user confirmed consent and a consent request was submitted. */
39
+ export interface SpareLinkConsentStarted {
40
+ readonly type: 'consentStarted';
41
+ readonly linkToken: string;
42
+ }
43
+ /** The user is being redirected to their bank's authorization page. */
44
+ export interface SpareLinkRedirectToBank {
45
+ readonly type: 'redirectToBank';
46
+ readonly linkToken: string;
47
+ }
48
+ /** The bank has redirected back with a callback URI. */
49
+ export interface SpareLinkBankCallbackReceived {
50
+ readonly type: 'bankCallbackReceived';
51
+ readonly linkToken: string;
52
+ }
53
+ /** The payment completed successfully and the flow is about to resolve. */
54
+ export interface SpareLinkSucceeded {
55
+ readonly type: 'succeeded';
56
+ readonly result: PaymentResult;
57
+ }
58
+ /** The payment failed and the flow is about to resolve. */
59
+ export interface SpareLinkFailed {
60
+ readonly type: 'failed';
61
+ readonly result: PaymentResult;
62
+ }
63
+ /** The user cancelled the payment and the flow is about to resolve. */
64
+ export interface SpareLinkCancelled {
65
+ readonly type: 'cancelled';
66
+ readonly result: PaymentResult;
67
+ }
68
+ /** The flow was abandoned without an explicit user action. */
69
+ export interface SpareLinkAbandoned {
70
+ readonly type: 'abandoned';
71
+ readonly result: PaymentResult;
72
+ }
73
+ /** All possible event type strings for type narrowing. */
74
+ export declare const SPARE_LINK_EVENT_TYPES: readonly ["initialized", "sessionLoaded", "consentStarted", "redirectToBank", "bankCallbackReceived", "succeeded", "failed", "cancelled", "abandoned"];
75
+ export type SpareLinkEventType = (typeof SPARE_LINK_EVENT_TYPES)[number];
76
+ /** Type guard for SpareLinkEvent. */
77
+ export declare function isSpareLinkEvent(value: unknown): value is SpareLinkEvent;
78
+ /** Factory functions for creating events (internal use). */
79
+ export declare const SpareLinkEvents: {
80
+ readonly initialized: (linkToken: string) => SpareLinkInitialized;
81
+ readonly sessionLoaded: (linkToken: string, linkSessionId?: string) => SpareLinkSessionLoaded;
82
+ readonly consentStarted: (linkToken: string) => SpareLinkConsentStarted;
83
+ readonly redirectToBank: (linkToken: string) => SpareLinkRedirectToBank;
84
+ readonly bankCallbackReceived: (linkToken: string) => SpareLinkBankCallbackReceived;
85
+ readonly succeeded: (result: PaymentResult) => SpareLinkSucceeded;
86
+ readonly failed: (result: PaymentResult) => SpareLinkFailed;
87
+ readonly cancelled: (result: PaymentResult) => SpareLinkCancelled;
88
+ readonly abandoned: (result: PaymentResult) => SpareLinkAbandoned;
89
+ };
90
+ //# sourceMappingURL=spare-link-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-event.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-event.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,MAAM,cAAc,GACtB,oBAAoB,GACpB,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,6BAA6B,GAC7B,kBAAkB,GAClB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,CAAC;AAEvB,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,sDAAsD;AACtD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,sEAAsE;AACtE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wDAAwD;AACxD,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,uEAAuE;AACvE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,wJAUzB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,qCAAqC;AACrC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAIxE;AAED,4DAA4D;AAC5D,eAAO,MAAM,eAAe;sCACH,MAAM,KAAG,oBAAoB;wCAG3B,MAAM,kBAAkB,MAAM,KAAG,sBAAsB;yCAKtD,MAAM,KAAG,uBAAuB;yCAGhC,MAAM,KAAG,uBAAuB;+CAG1B,MAAM,KAAG,6BAA6B;iCAGpD,aAAa,KAAG,kBAAkB;8BAGrC,aAAa,KAAG,eAAe;iCAG5B,aAAa,KAAG,kBAAkB;iCAGlC,aAAa,KAAG,kBAAkB;CAG5C,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { PaymentResult } from './payment-result.js';
2
+ import type { RecoveryResult } from './recovery-result.js';
3
+ import type { SpareLinkSession } from './spare-link-session.js';
4
+ /**
5
+ * Imperative API the {@link SpareLinkHost} mounts and wires to a
6
+ * {@link SpareLink} instance.
7
+ *
8
+ * @internal
9
+ */
10
+ export interface SpareLinkHostApi {
11
+ start(args: {
12
+ linkToken: string;
13
+ }): Promise<SpareLinkSession>;
14
+ handleRedirect(uri: URL | string): Promise<boolean>;
15
+ resumeIfNeeded(): Promise<RecoveryResult>;
16
+ isFlowActive(): boolean;
17
+ }
18
+ /** @internal */
19
+ export interface SpareLinkHostDelegate {
20
+ startFlow(args: {
21
+ linkToken: string;
22
+ resolve: (result: PaymentResult) => void;
23
+ onSessionLoaded?: (linkSessionId: string) => void;
24
+ }): void;
25
+ handleRedirect(uri: URL | string): Promise<boolean>;
26
+ resumeIfNeeded(): Promise<RecoveryResult>;
27
+ isFlowActive(): boolean;
28
+ }
29
+ //# sourceMappingURL=spare-link-host-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-host-api.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-host-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAsB,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9D,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,YAAY,IAAI,OAAO,CAAC;CACzB;AAED,gBAAgB;AAChB,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,IAAI,EAAE;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QACzC,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;KACnD,GAAG,IAAI,CAAC;IACT,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,YAAY,IAAI,OAAO,CAAC;CACzB"}
@@ -0,0 +1,89 @@
1
+ import type { PendingSessionStore } from '../core/services/pending-session-store.js';
2
+ import { type EventEmitter } from '../internal/event-emitter.js';
3
+ import { type PaymentResult } from './payment-result.js';
4
+ import { type NoRecoveryReason, type RecoveryResult, isSessionRecovered } from './recovery-result.js';
5
+ import { type PaymentEnvironment, type SpareApiTenant } from './spare-link-config.js';
6
+ import { type SpareLinkEvent } from './spare-link-event.js';
7
+ import type { SpareLinkHostDelegate } from './spare-link-host-api.js';
8
+ import { SpareLinkSession } from './spare-link-session.js';
9
+ export interface SpareLinkOptions {
10
+ environment: PaymentEnvironment;
11
+ tenant: SpareApiTenant;
12
+ baseUrl?: string;
13
+ fetch?: typeof fetch;
14
+ requestTimeoutMs?: number;
15
+ /** Store for crash-safe recovery. Defaults to none — wire e.g. `SecureStorePendingSessionStore`. */
16
+ pendingSessionStore?: PendingSessionStore;
17
+ }
18
+ /**
19
+ * Entry point for the Spare Link payment SDK — aligned with Flutter's
20
+ * instance-based {@link SpareLink} API.
21
+ *
22
+ * Mount {@link SpareLinkHost} once near your app root and pass this instance:
23
+ *
24
+ * ```tsx
25
+ * const spareLink = useMemo(
26
+ * () => new SpareLink({ environment: 'sandbox', tenant: 'uae' }),
27
+ * [],
28
+ * );
29
+ *
30
+ * <SpareLinkHost spareLink={spareLink}>
31
+ * <App />
32
+ * </SpareLinkHost>
33
+ * ```
34
+ */
35
+ export declare class SpareLink {
36
+ readonly environment: PaymentEnvironment;
37
+ readonly tenant: SpareApiTenant;
38
+ readonly baseUrl: string | undefined;
39
+ readonly fetch: typeof fetch | undefined;
40
+ readonly requestTimeoutMs: number | undefined;
41
+ readonly pendingSessionStore: PendingSessionStore | undefined;
42
+ private readonly _events;
43
+ private _host;
44
+ private _disposed;
45
+ private readonly _pendingStarts;
46
+ private readonly _pendingRedirects;
47
+ private readonly _pendingResumes;
48
+ constructor(options: SpareLinkOptions);
49
+ /** Lifecycle events for all flows started on this instance. */
50
+ get events(): EventEmitter<SpareLinkEvent>;
51
+ get resolvedBaseUrl(): string;
52
+ /** Returns `true` while a payment flow started via {@link start} is in progress. */
53
+ get isFlowActive(): boolean;
54
+ /**
55
+ * Starts a new payment flow.
56
+ *
57
+ * Returns a {@link SpareLinkSession} immediately; await `session.result`
58
+ * for the terminal outcome.
59
+ */
60
+ start(args: {
61
+ linkToken: string;
62
+ }): Promise<SpareLinkSession>;
63
+ /** Processes a deep-link URI received from the bank. */
64
+ handleRedirect(uri: URL | string): Promise<boolean>;
65
+ /** Checks for a pending session saved during a previous flow and recovers it. */
66
+ resumeIfNeeded(): Promise<RecoveryResult>;
67
+ dispose(): void;
68
+ /**
69
+ * Called by {@link SpareLinkHost} on mount. Drains any buffered calls.
70
+ *
71
+ * @internal
72
+ */
73
+ _attachHost(host: SpareLinkHostDelegate): () => void;
74
+ /** @internal */
75
+ emitEvent(event: SpareLinkEvent): void;
76
+ /** @internal */
77
+ emitTerminal(result: PaymentResult): void;
78
+ private _emitTerminal;
79
+ private _hostStart;
80
+ private _drainPending;
81
+ }
82
+ /** Map legacy recovery helper outcomes to Flutter-aligned {@link RecoveryResult}. */
83
+ export declare function mapHostRecovery(recovery: RecoveryResult | {
84
+ kind: 'inProgress';
85
+ linkToken: string;
86
+ }): RecoveryResult;
87
+ export declare function noRecovery(reason: NoRecoveryReason): RecoveryResult;
88
+ export { isSessionRecovered };
89
+ //# sourceMappingURL=spare-link-instance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-instance.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-instance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAAwC,CAAC;AAClF,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,8BAA2B,CAAC;AAClF,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,qBAAkB,CAAC;AACxE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,kBAAkB,EAAE,MAAM,sBAAmB,CAAC;AACnG,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEpB,MAAM,wBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,uBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAAuB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAsB,CAAC;AAExD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,kBAAkB,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oGAAoG;IACpG,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAgBD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,SAAS;IACpB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,OAAO,KAAK,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAE9D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwC;IAChE,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IACrD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAyB;IAC3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB;gBAE3C,OAAO,EAAE,gBAAgB;IASrC,+DAA+D;IAC/D,IAAI,MAAM,IAAI,YAAY,CAAC,cAAc,CAAC,CAEzC;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,oFAAoF;IACpF,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACG,KAAK,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiCnE,wDAAwD;IAClD,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzD,iFAAiF;IAC3E,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;IAe/C,OAAO,IAAI,IAAI;IA2Bf;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,IAAI;IAQpD,gBAAgB;IAChB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAItC,gBAAgB;IAChB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAIzC,OAAO,CAAC,aAAa;YAiBP,UAAU;IA6BxB,OAAO,CAAC,aAAa;CAiBtB;AAED,qFAAqF;AACrF,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACnE,cAAc,CAKhB;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAEnE;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { PaymentResult } from './payment-result.js';
2
+ /**
3
+ * Handle for an in-flight or completed payment started via {@link SpareLink.start}.
4
+ *
5
+ * Mirrors Flutter's `SpareLinkSession` — `linkToken` is available immediately;
6
+ * await `result` for the terminal outcome.
7
+ */
8
+ export declare class SpareLinkSession {
9
+ readonly linkToken: string;
10
+ linkSessionId: string | undefined;
11
+ readonly result: Promise<PaymentResult>;
12
+ constructor(args: {
13
+ linkToken: string;
14
+ result: Promise<PaymentResult>;
15
+ linkSessionId?: string;
16
+ });
17
+ /** Called internally when the server provides {@link linkSessionId}. */
18
+ updateLinkSessionId(value: string): void;
19
+ }
20
+ //# sourceMappingURL=spare-link-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link-session.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAEtD;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;gBAE5B,IAAI,EAAE;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB;IAMD,wEAAwE;IACxE,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAGzC"}
@@ -0,0 +1,3 @@
1
+ export { SpareLink, mapHostRecovery, noRecovery, isSessionRecovered } from './spare-link-instance.js';
2
+ export type { SpareLinkOptions } from './spare-link-instance.js';
3
+ //# sourceMappingURL=spare-link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spare-link.d.ts","sourceRoot":"","sources":["../../../../src/public/spare-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,0BAAuB,CAAC;AACnG,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAAuB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface ChargeBearerDisplayProps {
2
+ chargeBearer: string | undefined;
3
+ }
4
+ export declare function ChargeBearerDisplay(props: ChargeBearerDisplayProps): JSX.Element;
5
+ //# sourceMappingURL=charge-bearer-display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"charge-bearer-display.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/charge-bearer-display.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAQD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,CAwBhF"}
@@ -0,0 +1,10 @@
1
+ export interface ConsentAccordionItem {
2
+ header: string;
3
+ children: React.ReactNode;
4
+ initiallyExpanded?: boolean;
5
+ }
6
+ export interface ConsentAccordionProps {
7
+ items: ConsentAccordionItem[];
8
+ }
9
+ export declare function ConsentAccordion(props: ConsentAccordionProps): JSX.Element;
10
+ //# sourceMappingURL=consent-accordion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-accordion.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/consent-accordion.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAa1E"}
@@ -0,0 +1,6 @@
1
+ import type { ConsentSummaryData } from '../../core/services/consent-presenter.js';
2
+ export interface ConsentSummarySectionProps {
3
+ data: ConsentSummaryData;
4
+ }
5
+ export declare function ConsentSummarySection(props: ConsentSummarySectionProps): JSX.Element;
6
+ //# sourceMappingURL=consent-summary-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-summary-section.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/consent-summary-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAAuC,CAAC;AAKhF,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,GAAG,CAAC,OAAO,CASpF"}
@@ -0,0 +1,6 @@
1
+ import type { CopDisplayData } from '../../core/services/consent-presenter.js';
2
+ export declare function CopLoadingPlaceholder(): JSX.Element;
3
+ export declare function CopInformation(props: {
4
+ display: CopDisplayData;
5
+ }): JSX.Element;
6
+ //# sourceMappingURL=cop-information.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cop-information.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/cop-information.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,0CAAuC,CAAC;AAoB/F,wBAAgB,qBAAqB,IAAI,GAAG,CAAC,OAAO,CAoBnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,cAAc,CAAA;CAAE,GAAG,GAAG,CAAC,OAAO,CA8B9E"}
@@ -0,0 +1,6 @@
1
+ import type { InternationalPaymentSummaryData } from '../../core/services/consent-presenter.js';
2
+ export interface InternationalPaymentSummaryProps {
3
+ data: InternationalPaymentSummaryData;
4
+ }
5
+ export declare function InternationalPaymentSummary(props: InternationalPaymentSummaryProps): JSX.Element;
6
+ //# sourceMappingURL=international-payment-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"international-payment-summary.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/international-payment-summary.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAAuC,CAAC;AAQ7F,MAAM,WAAW,gCAAgC;IAC/C,IAAI,EAAE,+BAA+B,CAAC;CACvC;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,gCAAgC,GAAG,GAAG,CAAC,OAAO,CA6ChG"}
@@ -0,0 +1,10 @@
1
+ import type { LabelValueRow } from '../../core/services/multi-payment-rules-presenter.js';
2
+ export interface LabelValueRowsProps {
3
+ rows: LabelValueRow[];
4
+ /** Horizontal inset; Flutter defaults to 20 and uses 0 inside padded cards. */
5
+ paddingHorizontal?: number;
6
+ }
7
+ export declare function LabelValueRows(props: LabelValueRowsProps): JSX.Element;
8
+ declare function present(value: string | undefined, fallback?: string): string;
9
+ export { present };
10
+ //# sourceMappingURL=label-value-rows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-value-rows.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/label-value-rows.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sDAAmD,CAAC;AAGvF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAYtE;AAsBD,iBAAS,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,SAAM,GAAG,MAAM,CAGlE;AAED,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { PaymentType } from '../../core/models/payment-type.js';
2
+ import type { LabelValueRow } from '../../core/services/multi-payment-rules-presenter.js';
3
+ /** Number of defined-schedule entry cards visible before scrolling. */
4
+ export declare const DEFINED_SCHEDULE_VISIBLE_ENTRY_COUNT = 3;
5
+ /** Approximate height of one defined-schedule entry card (incl. spacing). */
6
+ export declare const DEFINED_SCHEDULE_ENTRY_EXTENT = 96;
7
+ export interface MultiPaymentRulesListProps {
8
+ rulesTitle?: string;
9
+ rules: LabelValueRow[];
10
+ paymentType: PaymentType;
11
+ }
12
+ export declare function MultiPaymentRulesList(props: MultiPaymentRulesListProps): JSX.Element;
13
+ /** Groups flat Amount/Date row pairs into per-payment entry lists. */
14
+ export declare function groupDefinedScheduleEntries(rules: LabelValueRow[]): LabelValueRow[][];
15
+ //# sourceMappingURL=multi-payment-rules-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-payment-rules-list.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/multi-payment-rules-list.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAgC,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sDAAmD,CAAC;AAIvF,uEAAuE;AACvE,eAAO,MAAM,oCAAoC,IAAI,CAAC;AAEtD,6EAA6E;AAC7E,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,MAAM,WAAW,0BAA0B;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,GAAG,CAAC,OAAO,CA0BpF;AAgDD,sEAAsE;AACtE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,EAAE,CAUrF"}
@@ -0,0 +1,6 @@
1
+ import type { MultiPaymentSummaryData } from '../../core/services/consent-presenter.js';
2
+ export interface MultiPaymentSummaryProps {
3
+ data: MultiPaymentSummaryData;
4
+ }
5
+ export declare function MultiPaymentSummary(props: MultiPaymentSummaryProps): JSX.Element;
6
+ //# sourceMappingURL=multi-payment-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-payment-summary.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/multi-payment-summary.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAAuC,CAAC;AAOrF,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,uBAAuB,CAAC;CAC/B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,CA6ChF"}
@@ -0,0 +1,6 @@
1
+ import type { SinglePaymentSummaryData } from '../../core/services/consent-presenter.js';
2
+ export interface SinglePaymentSummaryProps {
3
+ data: SinglePaymentSummaryData;
4
+ }
5
+ export declare function SinglePaymentSummary(props: SinglePaymentSummaryProps): JSX.Element;
6
+ //# sourceMappingURL=single-payment-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"single-payment-summary.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/single-payment-summary.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAAuC,CAAC;AAMtF,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,wBAAwB,CAAC;CAChC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,GAAG,CAAC,OAAO,CA0ClF"}
@@ -0,0 +1,2 @@
1
+ export declare function TermsLink(): JSX.Element;
2
+ //# sourceMappingURL=terms-link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terms-link.d.ts","sourceRoot":"","sources":["../../../../../src/ui/consent/terms-link.tsx"],"names":[],"mappings":"AAKA,wBAAgB,SAAS,IAAI,GAAG,CAAC,OAAO,CAWvC"}