@internetarchive/donation-form 0.5.17-a3 → 0.5.18-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (420) hide show
  1. package/LICENSE +661 -661
  2. package/README.md +115 -115
  3. package/dist/demo/braintree-endpoint-manager.d.ts +9 -9
  4. package/dist/demo/braintree-endpoint-manager.js +45 -45
  5. package/dist/demo/braintree-endpoint-manager.js.map +1 -1
  6. package/dist/demo/demo-analytics-handler.d.ts +17 -17
  7. package/dist/demo/demo-analytics-handler.js +13 -13
  8. package/dist/demo/demo-analytics-handler.js.map +1 -1
  9. package/dist/demo/submit-form-with.d.ts +7 -7
  10. package/dist/demo/submit-form-with.js +21 -21
  11. package/dist/demo/submit-form-with.js.map +1 -1
  12. package/dist/index.d.ts +7 -7
  13. package/dist/index.js +7 -7
  14. package/dist/index.js.map +1 -1
  15. package/dist/src/braintree-manager/braintree-interfaces.d.ts +147 -147
  16. package/dist/src/braintree-manager/braintree-interfaces.js +5 -5
  17. package/dist/src/braintree-manager/braintree-interfaces.js.map +1 -1
  18. package/dist/src/braintree-manager/braintree-manager.d.ts +124 -124
  19. package/dist/src/braintree-manager/braintree-manager.js +149 -149
  20. package/dist/src/braintree-manager/braintree-manager.js.map +1 -1
  21. package/dist/src/braintree-manager/payment-clients.d.ts +47 -47
  22. package/dist/src/braintree-manager/payment-clients.js +116 -116
  23. package/dist/src/braintree-manager/payment-clients.js.map +1 -1
  24. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-interface.d.ts +8 -8
  25. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-interface.js.map +1 -1
  26. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-delegate.d.ts +6 -6
  27. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-delegate.js.map +1 -1
  28. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-interface.d.ts +10 -10
  29. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-interface.js.map +1 -1
  30. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource.d.ts +21 -21
  31. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource.js +99 -99
  32. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource.js.map +1 -1
  33. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-manager.d.ts +10 -10
  34. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-manager.js +12 -12
  35. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-manager.js.map +1 -1
  36. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay.d.ts +20 -20
  37. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay.js +71 -71
  38. package/dist/src/braintree-manager/payment-providers/apple-pay/apple-pay.js.map +1 -1
  39. package/dist/src/braintree-manager/payment-providers/credit-card/credit-card-interface.d.ts +16 -16
  40. package/dist/src/braintree-manager/payment-providers/credit-card/credit-card-interface.js.map +1 -1
  41. package/dist/src/braintree-manager/payment-providers/credit-card/credit-card.d.ts +29 -29
  42. package/dist/src/braintree-manager/payment-providers/credit-card/credit-card.js +99 -99
  43. package/dist/src/braintree-manager/payment-providers/credit-card/credit-card.js.map +1 -1
  44. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-configuration.d.ts +11 -11
  45. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-configuration.js +7 -7
  46. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-configuration.js.map +1 -1
  47. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-container.d.ts +34 -34
  48. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-container.js +52 -52
  49. package/dist/src/braintree-manager/payment-providers/credit-card/hosted-field-container.js.map +1 -1
  50. package/dist/src/braintree-manager/payment-providers/google-pay-interface.d.ts +7 -7
  51. package/dist/src/braintree-manager/payment-providers/google-pay-interface.js.map +1 -1
  52. package/dist/src/braintree-manager/payment-providers/google-pay.d.ts +18 -18
  53. package/dist/src/braintree-manager/payment-providers/google-pay.js +40 -40
  54. package/dist/src/braintree-manager/payment-providers/google-pay.js.map +1 -1
  55. package/dist/src/braintree-manager/payment-providers/paypal/paypal-button-datasource.d.ts +145 -145
  56. package/dist/src/braintree-manager/payment-providers/paypal/paypal-button-datasource.js +60 -60
  57. package/dist/src/braintree-manager/payment-providers/paypal/paypal-button-datasource.js.map +1 -1
  58. package/dist/src/braintree-manager/payment-providers/paypal/paypal-interface.d.ts +11 -11
  59. package/dist/src/braintree-manager/payment-providers/paypal/paypal-interface.js.map +1 -1
  60. package/dist/src/braintree-manager/payment-providers/paypal/paypal.d.ts +23 -23
  61. package/dist/src/braintree-manager/payment-providers/paypal/paypal.js +46 -46
  62. package/dist/src/braintree-manager/payment-providers/paypal/paypal.js.map +1 -1
  63. package/dist/src/braintree-manager/payment-providers/venmo-interface.d.ts +6 -6
  64. package/dist/src/braintree-manager/payment-providers/venmo-interface.js.map +1 -1
  65. package/dist/src/braintree-manager/payment-providers/venmo.d.ts +28 -28
  66. package/dist/src/braintree-manager/payment-providers/venmo.js +50 -50
  67. package/dist/src/braintree-manager/payment-providers/venmo.js.map +1 -1
  68. package/dist/src/braintree-manager/payment-providers-interface.d.ts +16 -16
  69. package/dist/src/braintree-manager/payment-providers-interface.js.map +1 -1
  70. package/dist/src/braintree-manager/payment-providers.d.ts +45 -45
  71. package/dist/src/braintree-manager/payment-providers.js +105 -105
  72. package/dist/src/braintree-manager/payment-providers.js.map +1 -1
  73. package/dist/src/donation-form-controller.d.ts +116 -116
  74. package/dist/src/donation-form-controller.js +562 -562
  75. package/dist/src/donation-form-controller.js.map +1 -1
  76. package/dist/src/donation-form-error.d.ts +3 -3
  77. package/dist/src/donation-form-error.js +6 -6
  78. package/dist/src/donation-form-error.js.map +1 -1
  79. package/dist/src/donation-form.d.ts +120 -120
  80. package/dist/src/donation-form.js +530 -530
  81. package/dist/src/donation-form.js.map +1 -1
  82. package/dist/src/form-elements/badged-input.d.ts +32 -32
  83. package/dist/src/form-elements/badged-input.js +124 -124
  84. package/dist/src/form-elements/badged-input.js.map +1 -1
  85. package/dist/src/form-elements/contact-form/autocomplete-field-options.d.ts +1 -1
  86. package/dist/src/form-elements/contact-form/autocomplete-field-options.js.map +1 -1
  87. package/dist/src/form-elements/contact-form/contact-form.d.ts +53 -53
  88. package/dist/src/form-elements/contact-form/contact-form.js +428 -428
  89. package/dist/src/form-elements/contact-form/contact-form.js.map +1 -1
  90. package/dist/src/form-elements/contact-form/countries.d.ts +3 -3
  91. package/dist/src/form-elements/contact-form/countries.js +252 -252
  92. package/dist/src/form-elements/contact-form/countries.js.map +1 -1
  93. package/dist/src/form-elements/header/donation-form-header.d.ts +27 -27
  94. package/dist/src/form-elements/header/donation-form-header.js +97 -97
  95. package/dist/src/form-elements/header/donation-form-header.js.map +1 -1
  96. package/dist/src/form-elements/header/donation-summary.d.ts +11 -11
  97. package/dist/src/form-elements/header/donation-summary.js +57 -57
  98. package/dist/src/form-elements/header/donation-summary.js.map +1 -1
  99. package/dist/src/form-elements/payment-selector.d.ts +25 -25
  100. package/dist/src/form-elements/payment-selector.js +286 -286
  101. package/dist/src/form-elements/payment-selector.js.map +1 -1
  102. package/dist/src/form-elements/total-amount.d.ts +8 -8
  103. package/dist/src/form-elements/total-amount.js +47 -47
  104. package/dist/src/form-elements/total-amount.js.map +1 -1
  105. package/dist/src/modals/confirm-donation-modal-content.d.ts +31 -31
  106. package/dist/src/modals/confirm-donation-modal-content.js +168 -168
  107. package/dist/src/modals/confirm-donation-modal-content.js.map +1 -1
  108. package/dist/src/modals/error-modal-content.d.ts +14 -14
  109. package/dist/src/modals/error-modal-content.js +49 -49
  110. package/dist/src/modals/error-modal-content.js.map +1 -1
  111. package/dist/src/modals/upsell-modal-content.d.ts +32 -32
  112. package/dist/src/modals/upsell-modal-content.js +294 -294
  113. package/dist/src/modals/upsell-modal-content.js.map +1 -1
  114. package/dist/src/payment-flow-handlers/donation-flow-modal-manager.d.ts +181 -181
  115. package/dist/src/payment-flow-handlers/donation-flow-modal-manager.js +252 -252
  116. package/dist/src/payment-flow-handlers/donation-flow-modal-manager.js.map +1 -1
  117. package/dist/src/payment-flow-handlers/handlers/applepay-flow-handler.d.ts +21 -21
  118. package/dist/src/payment-flow-handlers/handlers/applepay-flow-handler.js +76 -76
  119. package/dist/src/payment-flow-handlers/handlers/applepay-flow-handler.js.map +1 -1
  120. package/dist/src/payment-flow-handlers/handlers/creditcard-flow-handler.d.ts +70 -70
  121. package/dist/src/payment-flow-handlers/handlers/creditcard-flow-handler.js +140 -140
  122. package/dist/src/payment-flow-handlers/handlers/creditcard-flow-handler.js.map +1 -1
  123. package/dist/src/payment-flow-handlers/handlers/googlepay-flow-handler.d.ts +22 -22
  124. package/dist/src/payment-flow-handlers/handlers/googlepay-flow-handler.js +74 -74
  125. package/dist/src/payment-flow-handlers/handlers/googlepay-flow-handler.js.map +1 -1
  126. package/dist/src/payment-flow-handlers/handlers/paypal-flow-handler.d.ts +52 -52
  127. package/dist/src/payment-flow-handlers/handlers/paypal-flow-handler.js +239 -239
  128. package/dist/src/payment-flow-handlers/handlers/paypal-flow-handler.js.map +1 -1
  129. package/dist/src/payment-flow-handlers/handlers/venmo-flow-handler.d.ts +30 -30
  130. package/dist/src/payment-flow-handlers/handlers/venmo-flow-handler.js +89 -89
  131. package/dist/src/payment-flow-handlers/handlers/venmo-flow-handler.js.map +1 -1
  132. package/dist/src/payment-flow-handlers/handlers/venmo-restoration-state-handler.d.ts +75 -75
  133. package/dist/src/payment-flow-handlers/handlers/venmo-restoration-state-handler.js +94 -94
  134. package/dist/src/payment-flow-handlers/handlers/venmo-restoration-state-handler.js.map +1 -1
  135. package/dist/src/payment-flow-handlers/payment-flow-handlers.d.ts +111 -111
  136. package/dist/src/payment-flow-handlers/payment-flow-handlers.js +107 -107
  137. package/dist/src/payment-flow-handlers/payment-flow-handlers.js.map +1 -1
  138. package/dist/src/recaptcha-manager/recaptcha-manager.d.ts +48 -48
  139. package/dist/src/recaptcha-manager/recaptcha-manager.js +88 -88
  140. package/dist/src/recaptcha-manager/recaptcha-manager.js.map +1 -1
  141. package/dist/src/util/promisedSleep.d.ts +1 -1
  142. package/dist/src/util/promisedSleep.js +3 -3
  143. package/dist/src/util/promisedSleep.js.map +1 -1
  144. package/dist/test/helpers/fillInContactForm.d.ts +2 -2
  145. package/dist/test/helpers/fillInContactForm.js +19 -19
  146. package/dist/test/helpers/fillInContactForm.js.map +1 -1
  147. package/dist/test/mocks/flow-handlers/individual-handlers/mock-applepay-flow-handler.d.ts +7 -7
  148. package/dist/test/mocks/flow-handlers/individual-handlers/mock-applepay-flow-handler.js +9 -9
  149. package/dist/test/mocks/flow-handlers/individual-handlers/mock-applepay-flow-handler.js.map +1 -1
  150. package/dist/test/mocks/flow-handlers/individual-handlers/mock-creditcard-flow-handler.d.ts +15 -15
  151. package/dist/test/mocks/flow-handlers/individual-handlers/mock-creditcard-flow-handler.js +32 -32
  152. package/dist/test/mocks/flow-handlers/individual-handlers/mock-creditcard-flow-handler.js.map +1 -1
  153. package/dist/test/mocks/flow-handlers/individual-handlers/mock-googlepay-flow-handler.d.ts +9 -9
  154. package/dist/test/mocks/flow-handlers/individual-handlers/mock-googlepay-flow-handler.js +15 -15
  155. package/dist/test/mocks/flow-handlers/individual-handlers/mock-googlepay-flow-handler.js.map +1 -1
  156. package/dist/test/mocks/flow-handlers/individual-handlers/mock-paypal-flow-handler.d.ts +15 -15
  157. package/dist/test/mocks/flow-handlers/individual-handlers/mock-paypal-flow-handler.js +30 -30
  158. package/dist/test/mocks/flow-handlers/individual-handlers/mock-paypal-flow-handler.js.map +1 -1
  159. package/dist/test/mocks/flow-handlers/individual-handlers/mock-venmo-flow-handler.d.ts +9 -9
  160. package/dist/test/mocks/flow-handlers/individual-handlers/mock-venmo-flow-handler.js +17 -17
  161. package/dist/test/mocks/flow-handlers/individual-handlers/mock-venmo-flow-handler.js.map +1 -1
  162. package/dist/test/mocks/flow-handlers/mock-payment-flow-handlers.d.ts +30 -30
  163. package/dist/test/mocks/flow-handlers/mock-payment-flow-handlers.js +29 -29
  164. package/dist/test/mocks/flow-handlers/mock-payment-flow-handlers.js.map +1 -1
  165. package/dist/test/mocks/mock-braintree-manager.d.ts +45 -45
  166. package/dist/test/mocks/mock-braintree-manager.js +71 -71
  167. package/dist/test/mocks/mock-braintree-manager.js.map +1 -1
  168. package/dist/test/mocks/mock-donation-info.d.ts +4 -4
  169. package/dist/test/mocks/mock-donation-info.js +10 -10
  170. package/dist/test/mocks/mock-donation-info.js.map +1 -1
  171. package/dist/test/mocks/mock-endpoint-manager.d.ts +12 -12
  172. package/dist/test/mocks/mock-endpoint-manager.js +19 -19
  173. package/dist/test/mocks/mock-endpoint-manager.js.map +1 -1
  174. package/dist/test/mocks/mock-hosted-fields-config.d.ts +4 -4
  175. package/dist/test/mocks/mock-hosted-fields-config.js +37 -37
  176. package/dist/test/mocks/mock-hosted-fields-config.js.map +1 -1
  177. package/dist/test/mocks/mock-hosted-fields-container.d.ts +13 -13
  178. package/dist/test/mocks/mock-hosted-fields-container.js +27 -27
  179. package/dist/test/mocks/mock-hosted-fields-container.js.map +1 -1
  180. package/dist/test/mocks/mock-lazy-loader.d.ts +15 -15
  181. package/dist/test/mocks/mock-lazy-loader.js +20 -20
  182. package/dist/test/mocks/mock-lazy-loader.js.map +1 -1
  183. package/dist/test/mocks/mock-modal-manager.d.ts +17 -17
  184. package/dist/test/mocks/mock-modal-manager.js +26 -26
  185. package/dist/test/mocks/mock-modal-manager.js.map +1 -1
  186. package/dist/test/mocks/mock-payment-clients.d.ts +29 -29
  187. package/dist/test/mocks/mock-payment-clients.js +78 -78
  188. package/dist/test/mocks/mock-payment-clients.js.map +1 -1
  189. package/dist/test/mocks/mock-paypal-button-renderer.d.ts +5 -5
  190. package/dist/test/mocks/mock-paypal-button-renderer.js +6 -6
  191. package/dist/test/mocks/mock-paypal-button-renderer.js.map +1 -1
  192. package/dist/test/mocks/mock-recaptcha-manager.d.ts +7 -7
  193. package/dist/test/mocks/mock-recaptcha-manager.js +14 -14
  194. package/dist/test/mocks/mock-recaptcha-manager.js.map +1 -1
  195. package/dist/test/mocks/models/mock-billing-info.d.ts +2 -2
  196. package/dist/test/mocks/models/mock-billing-info.js +9 -9
  197. package/dist/test/mocks/models/mock-billing-info.js.map +1 -1
  198. package/dist/test/mocks/models/mock-custom-fields.d.ts +2 -2
  199. package/dist/test/mocks/models/mock-custom-fields.js +7 -7
  200. package/dist/test/mocks/models/mock-custom-fields.js.map +1 -1
  201. package/dist/test/mocks/models/mock-customer-info.d.ts +2 -2
  202. package/dist/test/mocks/models/mock-customer-info.js +6 -6
  203. package/dist/test/mocks/models/mock-customer-info.js.map +1 -1
  204. package/dist/test/mocks/models/mock-donation-request.d.ts +2 -2
  205. package/dist/test/mocks/models/mock-donation-request.js +18 -18
  206. package/dist/test/mocks/models/mock-donation-request.js.map +1 -1
  207. package/dist/test/mocks/models/mock-success-response.d.ts +2 -2
  208. package/dist/test/mocks/models/mock-success-response.js +14 -14
  209. package/dist/test/mocks/models/mock-success-response.js.map +1 -1
  210. package/dist/test/mocks/payment-clients/mock-applepay-client.d.ts +21 -21
  211. package/dist/test/mocks/payment-clients/mock-applepay-client.js +72 -72
  212. package/dist/test/mocks/payment-clients/mock-applepay-client.js.map +1 -1
  213. package/dist/test/mocks/payment-clients/mock-applepay-payment.d.ts +6 -6
  214. package/dist/test/mocks/payment-clients/mock-applepay-payment.js +42 -42
  215. package/dist/test/mocks/payment-clients/mock-applepay-payment.js.map +1 -1
  216. package/dist/test/mocks/payment-clients/mock-applepay-paymentauthorizedevent.d.ts +22 -22
  217. package/dist/test/mocks/payment-clients/mock-applepay-paymentauthorizedevent.js +35 -35
  218. package/dist/test/mocks/payment-clients/mock-applepay-paymentauthorizedevent.js.map +1 -1
  219. package/dist/test/mocks/payment-clients/mock-applepay-session.d.ts +30 -30
  220. package/dist/test/mocks/payment-clients/mock-applepay-session.js +52 -52
  221. package/dist/test/mocks/payment-clients/mock-applepay-session.js.map +1 -1
  222. package/dist/test/mocks/payment-clients/mock-applepay-sessionmanager.d.ts +10 -10
  223. package/dist/test/mocks/payment-clients/mock-applepay-sessionmanager.js +12 -12
  224. package/dist/test/mocks/payment-clients/mock-applepay-sessionmanager.js.map +1 -1
  225. package/dist/test/mocks/payment-clients/mock-applepay-validatemerchantevent.d.ts +22 -22
  226. package/dist/test/mocks/payment-clients/mock-applepay-validatemerchantevent.js +34 -34
  227. package/dist/test/mocks/payment-clients/mock-applepay-validatemerchantevent.js.map +1 -1
  228. package/dist/test/mocks/payment-clients/mock-braintree-client.d.ts +14 -14
  229. package/dist/test/mocks/payment-clients/mock-braintree-client.js +19 -19
  230. package/dist/test/mocks/payment-clients/mock-braintree-client.js.map +1 -1
  231. package/dist/test/mocks/payment-clients/mock-data-collector.d.ts +11 -11
  232. package/dist/test/mocks/payment-clients/mock-data-collector.js +17 -17
  233. package/dist/test/mocks/payment-clients/mock-data-collector.js.map +1 -1
  234. package/dist/test/mocks/payment-clients/mock-googlepay-client.d.ts +22 -22
  235. package/dist/test/mocks/payment-clients/mock-googlepay-client.js +42 -42
  236. package/dist/test/mocks/payment-clients/mock-googlepay-client.js.map +1 -1
  237. package/dist/test/mocks/payment-clients/mock-googlepay-library.d.ts +10 -10
  238. package/dist/test/mocks/payment-clients/mock-googlepay-library.js +22 -22
  239. package/dist/test/mocks/payment-clients/mock-googlepay-library.js.map +1 -1
  240. package/dist/test/mocks/payment-clients/mock-grecaptcha.d.ts +23 -23
  241. package/dist/test/mocks/payment-clients/mock-grecaptcha.js +62 -62
  242. package/dist/test/mocks/payment-clients/mock-grecaptcha.js.map +1 -1
  243. package/dist/test/mocks/payment-clients/mock-hostedfields-client.d.ts +33 -33
  244. package/dist/test/mocks/payment-clients/mock-hostedfields-client.js +54 -54
  245. package/dist/test/mocks/payment-clients/mock-hostedfields-client.js.map +1 -1
  246. package/dist/test/mocks/payment-clients/mock-hostedfieldstateobject-generator.d.ts +1 -1
  247. package/dist/test/mocks/payment-clients/mock-hostedfieldstateobject-generator.js +50 -50
  248. package/dist/test/mocks/payment-clients/mock-hostedfieldstateobject-generator.js.map +1 -1
  249. package/dist/test/mocks/payment-clients/mock-hostedfieldtokenizepayload.d.ts +1 -1
  250. package/dist/test/mocks/payment-clients/mock-hostedfieldtokenizepayload.js +13 -13
  251. package/dist/test/mocks/payment-clients/mock-hostedfieldtokenizepayload.js.map +1 -1
  252. package/dist/test/mocks/payment-clients/mock-paypal-client.d.ts +23 -23
  253. package/dist/test/mocks/payment-clients/mock-paypal-client.js +62 -62
  254. package/dist/test/mocks/payment-clients/mock-paypal-client.js.map +1 -1
  255. package/dist/test/mocks/payment-clients/mock-paypal-library.d.ts +4 -4
  256. package/dist/test/mocks/payment-clients/mock-paypal-library.js +9 -9
  257. package/dist/test/mocks/payment-clients/mock-paypal-library.js.map +1 -1
  258. package/dist/test/mocks/payment-clients/mock-venmo-client.d.ts +22 -22
  259. package/dist/test/mocks/payment-clients/mock-venmo-client.js +36 -36
  260. package/dist/test/mocks/payment-clients/mock-venmo-client.js.map +1 -1
  261. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-datasource-delegate.d.ts +10 -10
  262. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-datasource-delegate.js +14 -14
  263. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-datasource-delegate.js.map +1 -1
  264. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-handler.d.ts +9 -9
  265. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-handler.js +19 -19
  266. package/dist/test/mocks/payment-providers/individual-providers/mock-applepay-handler.js.map +1 -1
  267. package/dist/test/mocks/payment-providers/individual-providers/mock-creditcard-handler.d.ts +18 -18
  268. package/dist/test/mocks/payment-providers/individual-providers/mock-creditcard-handler.js +41 -41
  269. package/dist/test/mocks/payment-providers/individual-providers/mock-creditcard-handler.js.map +1 -1
  270. package/dist/test/mocks/payment-providers/individual-providers/mock-googlepay-handler.d.ts +8 -8
  271. package/dist/test/mocks/payment-providers/individual-providers/mock-googlepay-handler.js +16 -16
  272. package/dist/test/mocks/payment-providers/individual-providers/mock-googlepay-handler.js.map +1 -1
  273. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource-delegate.d.ts +28 -28
  274. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource-delegate.js +52 -52
  275. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource-delegate.js.map +1 -1
  276. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource.d.ts +11 -11
  277. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource.js +37 -37
  278. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-button-datasource.js.map +1 -1
  279. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-handler.d.ts +12 -12
  280. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-handler.js +15 -15
  281. package/dist/test/mocks/payment-providers/individual-providers/mock-paypal-handler.js.map +1 -1
  282. package/dist/test/mocks/payment-providers/individual-providers/mock-venmo-handler.d.ts +7 -7
  283. package/dist/test/mocks/payment-providers/individual-providers/mock-venmo-handler.js +22 -22
  284. package/dist/test/mocks/payment-providers/individual-providers/mock-venmo-handler.js.map +1 -1
  285. package/dist/test/mocks/payment-providers/mock-payment-providers.d.ts +21 -21
  286. package/dist/test/mocks/payment-providers/mock-payment-providers.js +45 -45
  287. package/dist/test/mocks/payment-providers/mock-payment-providers.js.map +1 -1
  288. package/dist/test/tests/braintree-manager.test.d.ts +1 -1
  289. package/dist/test/tests/braintree-manager.test.js +166 -166
  290. package/dist/test/tests/braintree-manager.test.js.map +1 -1
  291. package/dist/test/tests/donation-form-controller.test.d.ts +1 -1
  292. package/dist/test/tests/donation-form-controller.test.js +188 -199
  293. package/dist/test/tests/donation-form-controller.test.js.map +1 -1
  294. package/dist/test/tests/donation-form.test.d.ts +1 -1
  295. package/dist/test/tests/donation-form.test.js +109 -109
  296. package/dist/test/tests/donation-form.test.js.map +1 -1
  297. package/dist/test/tests/flow-handlers/donation-flow-modal-manager.test.d.ts +1 -1
  298. package/dist/test/tests/flow-handlers/donation-flow-modal-manager.test.js +216 -216
  299. package/dist/test/tests/flow-handlers/donation-flow-modal-manager.test.js.map +1 -1
  300. package/dist/test/tests/form-elements/donation-summary.test.d.ts +1 -1
  301. package/dist/test/tests/form-elements/donation-summary.test.js +36 -36
  302. package/dist/test/tests/form-elements/donation-summary.test.js.map +1 -1
  303. package/dist/test/tests/form-elements/payment-selector.test.d.ts +1 -1
  304. package/dist/test/tests/form-elements/payment-selector.test.js +69 -69
  305. package/dist/test/tests/form-elements/payment-selector.test.js.map +1 -1
  306. package/dist/test/tests/modals/error-modal-content.test.d.ts +1 -1
  307. package/dist/test/tests/modals/error-modal-content.test.js +14 -14
  308. package/dist/test/tests/modals/error-modal-content.test.js.map +1 -1
  309. package/dist/test/tests/modals/upsell-modal-content.test.d.ts +1 -1
  310. package/dist/test/tests/modals/upsell-modal-content.test.js +163 -163
  311. package/dist/test/tests/modals/upsell-modal-content.test.js.map +1 -1
  312. package/dist/test/tests/models/donation-payment-info.test.d.ts +1 -1
  313. package/dist/test/tests/models/donation-payment-info.test.js +74 -74
  314. package/dist/test/tests/models/donation-payment-info.test.js.map +1 -1
  315. package/dist/test/tests/payment-clients.test.d.ts +1 -1
  316. package/dist/test/tests/payment-clients.test.js +130 -130
  317. package/dist/test/tests/payment-clients.test.js.map +1 -1
  318. package/dist/test/tests/payment-providers/applepay-sessiondatasource.test.d.ts +1 -1
  319. package/dist/test/tests/payment-providers/applepay-sessiondatasource.test.js +160 -160
  320. package/dist/test/tests/payment-providers/applepay-sessiondatasource.test.js.map +1 -1
  321. package/dist/test/tests/payment-providers/applepay-sessionmanager.test.d.ts +1 -1
  322. package/dist/test/tests/payment-providers/applepay-sessionmanager.test.js +36 -36
  323. package/dist/test/tests/payment-providers/applepay-sessionmanager.test.js.map +1 -1
  324. package/dist/test/tests/payment-providers/applepay.test.d.ts +1 -1
  325. package/dist/test/tests/payment-providers/applepay.test.js +78 -78
  326. package/dist/test/tests/payment-providers/applepay.test.js.map +1 -1
  327. package/dist/test/tests/payment-providers/creditcard.test.d.ts +1 -1
  328. package/dist/test/tests/payment-providers/creditcard.test.js +190 -190
  329. package/dist/test/tests/payment-providers/creditcard.test.js.map +1 -1
  330. package/dist/test/tests/payment-providers/googlepay.test.d.ts +1 -1
  331. package/dist/test/tests/payment-providers/googlepay.test.js +48 -48
  332. package/dist/test/tests/payment-providers/googlepay.test.js.map +1 -1
  333. package/dist/test/tests/payment-providers/payment-providers.test.d.ts +1 -1
  334. package/dist/test/tests/payment-providers/payment-providers.test.js +38 -38
  335. package/dist/test/tests/payment-providers/payment-providers.test.js.map +1 -1
  336. package/dist/test/tests/payment-providers/paypal-button-datasource.test.d.ts +1 -1
  337. package/dist/test/tests/payment-providers/paypal-button-datasource.test.js +162 -162
  338. package/dist/test/tests/payment-providers/paypal-button-datasource.test.js.map +1 -1
  339. package/dist/test/tests/payment-providers/paypal.test.d.ts +1 -1
  340. package/dist/test/tests/payment-providers/paypal.test.js +38 -38
  341. package/dist/test/tests/payment-providers/paypal.test.js.map +1 -1
  342. package/dist/test/tests/payment-providers/venmo.test.d.ts +1 -1
  343. package/dist/test/tests/payment-providers/venmo.test.js +77 -77
  344. package/dist/test/tests/payment-providers/venmo.test.js.map +1 -1
  345. package/dist/test/tests/recaptcha-manager.test.d.ts +1 -1
  346. package/dist/test/tests/recaptcha-manager.test.js +70 -70
  347. package/dist/test/tests/recaptcha-manager.test.js.map +1 -1
  348. package/package.json +101 -101
  349. package/src/@types/analytics-handler/index.d.ts +8 -8
  350. package/src/@types/braintree-web/LICENSE +21 -21
  351. package/src/@types/braintree-web/index.d.ts +93 -93
  352. package/src/@types/braintree-web/modules/american-express.d.ts +50 -50
  353. package/src/@types/braintree-web/modules/apple-pay.d.ts +213 -213
  354. package/src/@types/braintree-web/modules/client.d.ts +103 -103
  355. package/src/@types/braintree-web/modules/core.d.ts +34 -34
  356. package/src/@types/braintree-web/modules/data-collector.d.ts +13 -13
  357. package/src/@types/braintree-web/modules/google-payment.d.ts +269 -269
  358. package/src/@types/braintree-web/modules/hosted-fields.d.ts +366 -366
  359. package/src/@types/braintree-web/modules/paypal-checkout.d.ts +262 -262
  360. package/src/@types/braintree-web/modules/paypal.d.ts +177 -177
  361. package/src/@types/braintree-web/modules/three-d-secure.d.ts +141 -141
  362. package/src/@types/braintree-web/modules/unionpay.d.ts +224 -224
  363. package/src/@types/braintree-web/modules/us-bank-account.d.ts +81 -81
  364. package/src/@types/braintree-web/modules/venmo.d.ts +110 -110
  365. package/src/@types/braintree-web/package.json +64 -64
  366. package/src/@types/paypal-checkout-components/LICENSE +21 -21
  367. package/src/@types/paypal-checkout-components/index.d.ts +67 -67
  368. package/src/@types/paypal-checkout-components/modules/button.d.ts +50 -50
  369. package/src/@types/paypal-checkout-components/modules/callback-data.d.ts +244 -244
  370. package/src/@types/paypal-checkout-components/modules/configuration.d.ts +114 -114
  371. package/src/@types/paypal-checkout-components/package.json +58 -58
  372. package/src/braintree-manager/braintree-interfaces.ts +172 -172
  373. package/src/braintree-manager/braintree-manager.ts +283 -283
  374. package/src/braintree-manager/payment-clients.ts +148 -148
  375. package/src/braintree-manager/payment-providers/apple-pay/apple-pay-interface.ts +13 -13
  376. package/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-delegate.ts +8 -8
  377. package/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource-interface.ts +10 -10
  378. package/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-datasource.ts +119 -119
  379. package/src/braintree-manager/payment-providers/apple-pay/apple-pay-session-manager.ts +21 -21
  380. package/src/braintree-manager/payment-providers/apple-pay/apple-pay.ts +98 -98
  381. package/src/braintree-manager/payment-providers/credit-card/credit-card-interface.ts +21 -21
  382. package/src/braintree-manager/payment-providers/credit-card/credit-card.ts +130 -130
  383. package/src/braintree-manager/payment-providers/credit-card/hosted-field-configuration.ts +19 -19
  384. package/src/braintree-manager/payment-providers/credit-card/hosted-field-container.ts +85 -85
  385. package/src/braintree-manager/payment-providers/google-pay-interface.ts +8 -8
  386. package/src/braintree-manager/payment-providers/google-pay.ts +59 -59
  387. package/src/braintree-manager/payment-providers/paypal/paypal-button-datasource.ts +218 -218
  388. package/src/braintree-manager/payment-providers/paypal/paypal-interface.ts +13 -13
  389. package/src/braintree-manager/payment-providers/paypal/paypal.ts +78 -78
  390. package/src/braintree-manager/payment-providers/venmo-interface.ts +8 -8
  391. package/src/braintree-manager/payment-providers/venmo.ts +67 -67
  392. package/src/braintree-manager/payment-providers-interface.ts +25 -25
  393. package/src/braintree-manager/payment-providers.ts +147 -147
  394. package/src/donation-form-controller.ts +619 -619
  395. package/src/donation-form-error.ts +6 -6
  396. package/src/donation-form.ts +566 -566
  397. package/src/form-elements/badged-input.ts +113 -113
  398. package/src/form-elements/contact-form/autocomplete-field-options.ts +63 -63
  399. package/src/form-elements/contact-form/contact-form.ts +427 -427
  400. package/src/form-elements/contact-form/countries.ts +252 -252
  401. package/src/form-elements/header/donation-form-header.ts +100 -100
  402. package/src/form-elements/header/donation-summary.ts +61 -61
  403. package/src/form-elements/payment-selector.ts +293 -293
  404. package/src/form-elements/total-amount.ts +46 -46
  405. package/src/modals/confirm-donation-modal-content.ts +160 -160
  406. package/src/modals/error-modal-content.ts +48 -48
  407. package/src/modals/upsell-modal-content.ts +294 -294
  408. package/src/payment-flow-handlers/donation-flow-modal-manager.ts +450 -450
  409. package/src/payment-flow-handlers/handlers/applepay-flow-handler.ts +108 -108
  410. package/src/payment-flow-handlers/handlers/creditcard-flow-handler.ts +231 -231
  411. package/src/payment-flow-handlers/handlers/googlepay-flow-handler.ts +113 -113
  412. package/src/payment-flow-handlers/handlers/paypal-flow-handler.ts +332 -332
  413. package/src/payment-flow-handlers/handlers/venmo-flow-handler.ts +118 -118
  414. package/src/payment-flow-handlers/handlers/venmo-restoration-state-handler.ts +127 -127
  415. package/src/payment-flow-handlers/payment-flow-handlers.ts +218 -218
  416. package/src/recaptcha-manager/recaptcha-manager.ts +123 -123
  417. package/src/util/promisedSleep.ts +3 -3
  418. package/dist/test/mocks/mock-analytics-handler.d.ts +0 -8
  419. package/dist/test/mocks/mock-analytics-handler.js +0 -10
  420. package/dist/test/mocks/mock-analytics-handler.js.map +0 -1
@@ -1,147 +1,147 @@
1
- import { DonationRequest, DonationResponse, SuccessResponse, PaymentProvider, DonationPaymentInfo, CustomerInfo, BillingInfo } from '@internetarchive/donation-form-data-models';
2
- import { PromisedSingleton } from '@internetarchive/promised-singleton';
3
- import { Unsubscribe } from 'nanoevents';
4
- import { PaymentProvidersInterface } from './payment-providers-interface';
5
- export interface BraintreeManagerEvents {
6
- paymentProvidersHostedFieldsRetry: (retryNumber: number) => void;
7
- paymentProvidersHostedFieldsFailed: (error: unknown) => void;
8
- }
9
- /**
10
- * The BraintreeManager is the main entrypoint for much of the common braintree functionality.
11
- *
12
- * A single instance of it gets created and passed down through all of the components.
13
- *
14
- * @export
15
- * @interface BraintreeManagerInterface
16
- */
17
- export interface BraintreeManagerInterface {
18
- on<E extends keyof BraintreeManagerEvents>(event: E, callback: BraintreeManagerEvents[E]): Unsubscribe;
19
- /**
20
- * The PaymentProviders class contains the IA-specific handlers for each of the
21
- * different payment providers.
22
- *
23
- * They are generally data-focused, as opposed to UI-focused, but there
24
- * is some cross-polination between PaymentProviders and FlowHandlers.
25
- *
26
- * @type {PaymentProvidersInterface}
27
- * @memberof BraintreeManagerInterface
28
- */
29
- paymentProviders: PaymentProvidersInterface;
30
- /**
31
- * The Braintree Client instance.
32
- *
33
- * This gets used to isntantiate clients for all of the payment providers.
34
- *
35
- * @type {PromisedSingleton<braintree.Client>}
36
- * @memberof BraintreeManagerInterface
37
- */
38
- instance: PromisedSingleton<braintree.Client>;
39
- /**
40
- * Set the referrer for later submission
41
- *
42
- * @param {string} referrer
43
- * @memberof BraintreeManagerInterface
44
- */
45
- setReferrer(referrer: string): void;
46
- /**
47
- * Set the origin for later submission
48
- *
49
- * @param {string} origin
50
- * @memberof BraintreeManagerInterface
51
- */
52
- setOrigin(origin: string): void;
53
- /**
54
- * Set the logged-in user for later submission
55
- *
56
- * @param {string} loggedInUser
57
- * @memberof BraintreeManagerInterface
58
- */
59
- setLoggedInUser(loggedInUser: string): void;
60
- /**
61
- * Perform startup tasts like session resuming
62
- *
63
- * @memberof BraintreeManagerInterface
64
- */
65
- startup(): void;
66
- /**
67
- * Submit donation to the backend
68
- *
69
- * @param {{
70
- * nonce: string;
71
- * paymentProvider: PaymentProvider;
72
- * donationInfo: DonationPaymentInfo;
73
- * billingInfo: BillingInfo;
74
- * customerInfo: CustomerInfo;
75
- * upsellOnetimeTransactionId?: string;
76
- * customerId?: string;
77
- * recaptchaToken?: string;
78
- * bin?: string; // first 6 digits of CC
79
- * binName?: string; // credit card bank name
80
- * }} options
81
- * @returns {Promise<DonationResponse>}
82
- * @memberof BraintreeManagerInterface
83
- */
84
- submitDonation(options: {
85
- nonce: string;
86
- paymentProvider: PaymentProvider;
87
- donationInfo: DonationPaymentInfo;
88
- billingInfo: BillingInfo;
89
- customerInfo: CustomerInfo;
90
- upsellOnetimeTransactionId?: string;
91
- customerId?: string;
92
- recaptchaToken?: string;
93
- bin?: string;
94
- binName?: string;
95
- }): Promise<DonationResponse>;
96
- /**
97
- * Submit the upsell donation
98
- *
99
- * @param {{
100
- * oneTimeDonationResponse: SuccessResponse;
101
- * amount: number;
102
- * }} options
103
- * @returns {Promise<DonationResponse>}
104
- * @memberof BraintreeManagerInterface
105
- */
106
- submitUpsellDonation(options: {
107
- oneTimeDonationResponse: SuccessResponse;
108
- amount: number;
109
- }): Promise<DonationResponse>;
110
- /**
111
- * Finish the donation after a successful completion.
112
- *
113
- * @param {{
114
- * successResponse: SuccessResponse;
115
- * upsellSuccessResponse?: SuccessResponse;
116
- * }} options
117
- * @memberof BraintreeManagerInterface
118
- */
119
- donationSuccessful(options: {
120
- successResponse: SuccessResponse;
121
- upsellSuccessResponse?: SuccessResponse;
122
- }): void;
123
- }
124
- export interface BraintreeEndpointManagerInterface {
125
- /**
126
- * Responsible for submitting a data object to the backend
127
- * and returning a Promise of the JSON object response.
128
- *
129
- * @param {object} data
130
- * @returns {Promise<object>}
131
- * @memberof BraintreeEndpointManagerInterface
132
- */
133
- submitData(request: DonationRequest): Promise<DonationResponse>;
134
- /**
135
- * Once the user is finished with the donation flow, either after
136
- * a monthly donation or an upsell, we notify the endpoint manager
137
- * so it can redirect the user to the thank you page.
138
- */
139
- donationSuccessful(options: {
140
- successResponse: SuccessResponse;
141
- upsellSuccessResponse?: SuccessResponse;
142
- }): void;
143
- }
144
- export declare enum HostingEnvironment {
145
- Development = "dev",
146
- Production = "prod"
147
- }
1
+ import { DonationRequest, DonationResponse, SuccessResponse, PaymentProvider, DonationPaymentInfo, CustomerInfo, BillingInfo } from '@internetarchive/donation-form-data-models';
2
+ import { PromisedSingleton } from '@internetarchive/promised-singleton';
3
+ import { Unsubscribe } from 'nanoevents';
4
+ import { PaymentProvidersInterface } from './payment-providers-interface';
5
+ export interface BraintreeManagerEvents {
6
+ paymentProvidersHostedFieldsRetry: (retryNumber: number) => void;
7
+ paymentProvidersHostedFieldsFailed: (error: unknown) => void;
8
+ }
9
+ /**
10
+ * The BraintreeManager is the main entrypoint for much of the common braintree functionality.
11
+ *
12
+ * A single instance of it gets created and passed down through all of the components.
13
+ *
14
+ * @export
15
+ * @interface BraintreeManagerInterface
16
+ */
17
+ export interface BraintreeManagerInterface {
18
+ on<E extends keyof BraintreeManagerEvents>(event: E, callback: BraintreeManagerEvents[E]): Unsubscribe;
19
+ /**
20
+ * The PaymentProviders class contains the IA-specific handlers for each of the
21
+ * different payment providers.
22
+ *
23
+ * They are generally data-focused, as opposed to UI-focused, but there
24
+ * is some cross-polination between PaymentProviders and FlowHandlers.
25
+ *
26
+ * @type {PaymentProvidersInterface}
27
+ * @memberof BraintreeManagerInterface
28
+ */
29
+ paymentProviders: PaymentProvidersInterface;
30
+ /**
31
+ * The Braintree Client instance.
32
+ *
33
+ * This gets used to isntantiate clients for all of the payment providers.
34
+ *
35
+ * @type {PromisedSingleton<braintree.Client>}
36
+ * @memberof BraintreeManagerInterface
37
+ */
38
+ instance: PromisedSingleton<braintree.Client>;
39
+ /**
40
+ * Set the referrer for later submission
41
+ *
42
+ * @param {string} referrer
43
+ * @memberof BraintreeManagerInterface
44
+ */
45
+ setReferrer(referrer: string): void;
46
+ /**
47
+ * Set the origin for later submission
48
+ *
49
+ * @param {string} origin
50
+ * @memberof BraintreeManagerInterface
51
+ */
52
+ setOrigin(origin: string): void;
53
+ /**
54
+ * Set the logged-in user for later submission
55
+ *
56
+ * @param {string} loggedInUser
57
+ * @memberof BraintreeManagerInterface
58
+ */
59
+ setLoggedInUser(loggedInUser: string): void;
60
+ /**
61
+ * Perform startup tasts like session resuming
62
+ *
63
+ * @memberof BraintreeManagerInterface
64
+ */
65
+ startup(): void;
66
+ /**
67
+ * Submit donation to the backend
68
+ *
69
+ * @param {{
70
+ * nonce: string;
71
+ * paymentProvider: PaymentProvider;
72
+ * donationInfo: DonationPaymentInfo;
73
+ * billingInfo: BillingInfo;
74
+ * customerInfo: CustomerInfo;
75
+ * upsellOnetimeTransactionId?: string;
76
+ * customerId?: string;
77
+ * recaptchaToken?: string;
78
+ * bin?: string; // first 6 digits of CC
79
+ * binName?: string; // credit card bank name
80
+ * }} options
81
+ * @returns {Promise<DonationResponse>}
82
+ * @memberof BraintreeManagerInterface
83
+ */
84
+ submitDonation(options: {
85
+ nonce: string;
86
+ paymentProvider: PaymentProvider;
87
+ donationInfo: DonationPaymentInfo;
88
+ billingInfo: BillingInfo;
89
+ customerInfo: CustomerInfo;
90
+ upsellOnetimeTransactionId?: string;
91
+ customerId?: string;
92
+ recaptchaToken?: string;
93
+ bin?: string;
94
+ binName?: string;
95
+ }): Promise<DonationResponse>;
96
+ /**
97
+ * Submit the upsell donation
98
+ *
99
+ * @param {{
100
+ * oneTimeDonationResponse: SuccessResponse;
101
+ * amount: number;
102
+ * }} options
103
+ * @returns {Promise<DonationResponse>}
104
+ * @memberof BraintreeManagerInterface
105
+ */
106
+ submitUpsellDonation(options: {
107
+ oneTimeDonationResponse: SuccessResponse;
108
+ amount: number;
109
+ }): Promise<DonationResponse>;
110
+ /**
111
+ * Finish the donation after a successful completion.
112
+ *
113
+ * @param {{
114
+ * successResponse: SuccessResponse;
115
+ * upsellSuccessResponse?: SuccessResponse;
116
+ * }} options
117
+ * @memberof BraintreeManagerInterface
118
+ */
119
+ donationSuccessful(options: {
120
+ successResponse: SuccessResponse;
121
+ upsellSuccessResponse?: SuccessResponse;
122
+ }): void;
123
+ }
124
+ export interface BraintreeEndpointManagerInterface {
125
+ /**
126
+ * Responsible for submitting a data object to the backend
127
+ * and returning a Promise of the JSON object response.
128
+ *
129
+ * @param {object} data
130
+ * @returns {Promise<object>}
131
+ * @memberof BraintreeEndpointManagerInterface
132
+ */
133
+ submitData(request: DonationRequest): Promise<DonationResponse>;
134
+ /**
135
+ * Once the user is finished with the donation flow, either after
136
+ * a monthly donation or an upsell, we notify the endpoint manager
137
+ * so it can redirect the user to the thank you page.
138
+ */
139
+ donationSuccessful(options: {
140
+ successResponse: SuccessResponse;
141
+ upsellSuccessResponse?: SuccessResponse;
142
+ }): void;
143
+ }
144
+ export declare enum HostingEnvironment {
145
+ Development = "dev",
146
+ Production = "prod"
147
+ }
@@ -1,6 +1,6 @@
1
- export var HostingEnvironment;
2
- (function (HostingEnvironment) {
3
- HostingEnvironment["Development"] = "dev";
4
- HostingEnvironment["Production"] = "prod";
5
- })(HostingEnvironment || (HostingEnvironment = {}));
1
+ export var HostingEnvironment;
2
+ (function (HostingEnvironment) {
3
+ HostingEnvironment["Development"] = "dev";
4
+ HostingEnvironment["Production"] = "prod";
5
+ })(HostingEnvironment || (HostingEnvironment = {}));
6
6
  //# sourceMappingURL=braintree-interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"braintree-interfaces.js","sourceRoot":"","sources":["../../../src/braintree-manager/braintree-interfaces.ts"],"names":[],"mappings":"AAwKA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;AACrB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B","sourcesContent":["import {\n DonationRequest,\n DonationResponse,\n SuccessResponse,\n PaymentProvider,\n DonationPaymentInfo,\n CustomerInfo,\n BillingInfo,\n} from '@internetarchive/donation-form-data-models';\nimport { PromisedSingleton } from '@internetarchive/promised-singleton';\nimport { Unsubscribe } from 'nanoevents';\nimport { PaymentProvidersInterface } from './payment-providers-interface';\n\nexport interface BraintreeManagerEvents {\n paymentProvidersHostedFieldsRetry: (retryNumber: number) => void;\n paymentProvidersHostedFieldsFailed: (error: unknown) => void;\n}\n\n/**\n * The BraintreeManager is the main entrypoint for much of the common braintree functionality.\n *\n * A single instance of it gets created and passed down through all of the components.\n *\n * @export\n * @interface BraintreeManagerInterface\n */\nexport interface BraintreeManagerInterface {\n on<E extends keyof BraintreeManagerEvents>(\n event: E,\n callback: BraintreeManagerEvents[E],\n ): Unsubscribe;\n\n /**\n * The PaymentProviders class contains the IA-specific handlers for each of the\n * different payment providers.\n *\n * They are generally data-focused, as opposed to UI-focused, but there\n * is some cross-polination between PaymentProviders and FlowHandlers.\n *\n * @type {PaymentProvidersInterface}\n * @memberof BraintreeManagerInterface\n */\n paymentProviders: PaymentProvidersInterface;\n\n /**\n * The Braintree Client instance.\n *\n * This gets used to isntantiate clients for all of the payment providers.\n *\n * @type {PromisedSingleton<braintree.Client>}\n * @memberof BraintreeManagerInterface\n */\n instance: PromisedSingleton<braintree.Client>;\n\n /**\n * Set the referrer for later submission\n *\n * @param {string} referrer\n * @memberof BraintreeManagerInterface\n */\n setReferrer(referrer: string): void;\n\n /**\n * Set the origin for later submission\n *\n * @param {string} origin\n * @memberof BraintreeManagerInterface\n */\n setOrigin(origin: string): void;\n\n /**\n * Set the logged-in user for later submission\n *\n * @param {string} loggedInUser\n * @memberof BraintreeManagerInterface\n */\n setLoggedInUser(loggedInUser: string): void;\n\n /**\n * Perform startup tasts like session resuming\n *\n * @memberof BraintreeManagerInterface\n */\n startup(): void;\n\n /**\n * Submit donation to the backend\n *\n * @param {{\n * nonce: string;\n * paymentProvider: PaymentProvider;\n * donationInfo: DonationPaymentInfo;\n * billingInfo: BillingInfo;\n * customerInfo: CustomerInfo;\n * upsellOnetimeTransactionId?: string;\n * customerId?: string;\n * recaptchaToken?: string;\n * bin?: string; // first 6 digits of CC\n * binName?: string; // credit card bank name\n * }} options\n * @returns {Promise<DonationResponse>}\n * @memberof BraintreeManagerInterface\n */\n submitDonation(options: {\n nonce: string;\n paymentProvider: PaymentProvider;\n donationInfo: DonationPaymentInfo;\n billingInfo: BillingInfo;\n customerInfo: CustomerInfo;\n upsellOnetimeTransactionId?: string;\n customerId?: string;\n recaptchaToken?: string;\n bin?: string; // first 6 digits of CC\n binName?: string; // credit card bank name\n }): Promise<DonationResponse>;\n\n /**\n * Submit the upsell donation\n *\n * @param {{\n * oneTimeDonationResponse: SuccessResponse;\n * amount: number;\n * }} options\n * @returns {Promise<DonationResponse>}\n * @memberof BraintreeManagerInterface\n */\n submitUpsellDonation(options: {\n oneTimeDonationResponse: SuccessResponse;\n amount: number;\n }): Promise<DonationResponse>;\n\n /**\n * Finish the donation after a successful completion.\n *\n * @param {{\n * successResponse: SuccessResponse;\n * upsellSuccessResponse?: SuccessResponse;\n * }} options\n * @memberof BraintreeManagerInterface\n */\n donationSuccessful(options: {\n successResponse: SuccessResponse;\n upsellSuccessResponse?: SuccessResponse;\n }): void;\n}\n\nexport interface BraintreeEndpointManagerInterface {\n /**\n * Responsible for submitting a data object to the backend\n * and returning a Promise of the JSON object response.\n *\n * @param {object} data\n * @returns {Promise<object>}\n * @memberof BraintreeEndpointManagerInterface\n */\n submitData(request: DonationRequest): Promise<DonationResponse>;\n\n /**\n * Once the user is finished with the donation flow, either after\n * a monthly donation or an upsell, we notify the endpoint manager\n * so it can redirect the user to the thank you page.\n */\n donationSuccessful(options: {\n successResponse: SuccessResponse;\n upsellSuccessResponse?: SuccessResponse;\n }): void;\n}\n\nexport enum HostingEnvironment {\n Development = 'dev',\n Production = 'prod',\n}\n"]}
1
+ {"version":3,"file":"braintree-interfaces.js","sourceRoot":"","sources":["../../../src/braintree-manager/braintree-interfaces.ts"],"names":[],"mappings":"AAwKA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;AACrB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B","sourcesContent":["import {\r\n DonationRequest,\r\n DonationResponse,\r\n SuccessResponse,\r\n PaymentProvider,\r\n DonationPaymentInfo,\r\n CustomerInfo,\r\n BillingInfo,\r\n} from '@internetarchive/donation-form-data-models';\r\nimport { PromisedSingleton } from '@internetarchive/promised-singleton';\r\nimport { Unsubscribe } from 'nanoevents';\r\nimport { PaymentProvidersInterface } from './payment-providers-interface';\r\n\r\nexport interface BraintreeManagerEvents {\r\n paymentProvidersHostedFieldsRetry: (retryNumber: number) => void;\r\n paymentProvidersHostedFieldsFailed: (error: unknown) => void;\r\n}\r\n\r\n/**\r\n * The BraintreeManager is the main entrypoint for much of the common braintree functionality.\r\n *\r\n * A single instance of it gets created and passed down through all of the components.\r\n *\r\n * @export\r\n * @interface BraintreeManagerInterface\r\n */\r\nexport interface BraintreeManagerInterface {\r\n on<E extends keyof BraintreeManagerEvents>(\r\n event: E,\r\n callback: BraintreeManagerEvents[E],\r\n ): Unsubscribe;\r\n\r\n /**\r\n * The PaymentProviders class contains the IA-specific handlers for each of the\r\n * different payment providers.\r\n *\r\n * They are generally data-focused, as opposed to UI-focused, but there\r\n * is some cross-polination between PaymentProviders and FlowHandlers.\r\n *\r\n * @type {PaymentProvidersInterface}\r\n * @memberof BraintreeManagerInterface\r\n */\r\n paymentProviders: PaymentProvidersInterface;\r\n\r\n /**\r\n * The Braintree Client instance.\r\n *\r\n * This gets used to isntantiate clients for all of the payment providers.\r\n *\r\n * @type {PromisedSingleton<braintree.Client>}\r\n * @memberof BraintreeManagerInterface\r\n */\r\n instance: PromisedSingleton<braintree.Client>;\r\n\r\n /**\r\n * Set the referrer for later submission\r\n *\r\n * @param {string} referrer\r\n * @memberof BraintreeManagerInterface\r\n */\r\n setReferrer(referrer: string): void;\r\n\r\n /**\r\n * Set the origin for later submission\r\n *\r\n * @param {string} origin\r\n * @memberof BraintreeManagerInterface\r\n */\r\n setOrigin(origin: string): void;\r\n\r\n /**\r\n * Set the logged-in user for later submission\r\n *\r\n * @param {string} loggedInUser\r\n * @memberof BraintreeManagerInterface\r\n */\r\n setLoggedInUser(loggedInUser: string): void;\r\n\r\n /**\r\n * Perform startup tasts like session resuming\r\n *\r\n * @memberof BraintreeManagerInterface\r\n */\r\n startup(): void;\r\n\r\n /**\r\n * Submit donation to the backend\r\n *\r\n * @param {{\r\n * nonce: string;\r\n * paymentProvider: PaymentProvider;\r\n * donationInfo: DonationPaymentInfo;\r\n * billingInfo: BillingInfo;\r\n * customerInfo: CustomerInfo;\r\n * upsellOnetimeTransactionId?: string;\r\n * customerId?: string;\r\n * recaptchaToken?: string;\r\n * bin?: string; // first 6 digits of CC\r\n * binName?: string; // credit card bank name\r\n * }} options\r\n * @returns {Promise<DonationResponse>}\r\n * @memberof BraintreeManagerInterface\r\n */\r\n submitDonation(options: {\r\n nonce: string;\r\n paymentProvider: PaymentProvider;\r\n donationInfo: DonationPaymentInfo;\r\n billingInfo: BillingInfo;\r\n customerInfo: CustomerInfo;\r\n upsellOnetimeTransactionId?: string;\r\n customerId?: string;\r\n recaptchaToken?: string;\r\n bin?: string; // first 6 digits of CC\r\n binName?: string; // credit card bank name\r\n }): Promise<DonationResponse>;\r\n\r\n /**\r\n * Submit the upsell donation\r\n *\r\n * @param {{\r\n * oneTimeDonationResponse: SuccessResponse;\r\n * amount: number;\r\n * }} options\r\n * @returns {Promise<DonationResponse>}\r\n * @memberof BraintreeManagerInterface\r\n */\r\n submitUpsellDonation(options: {\r\n oneTimeDonationResponse: SuccessResponse;\r\n amount: number;\r\n }): Promise<DonationResponse>;\r\n\r\n /**\r\n * Finish the donation after a successful completion.\r\n *\r\n * @param {{\r\n * successResponse: SuccessResponse;\r\n * upsellSuccessResponse?: SuccessResponse;\r\n * }} options\r\n * @memberof BraintreeManagerInterface\r\n */\r\n donationSuccessful(options: {\r\n successResponse: SuccessResponse;\r\n upsellSuccessResponse?: SuccessResponse;\r\n }): void;\r\n}\r\n\r\nexport interface BraintreeEndpointManagerInterface {\r\n /**\r\n * Responsible for submitting a data object to the backend\r\n * and returning a Promise of the JSON object response.\r\n *\r\n * @param {object} data\r\n * @returns {Promise<object>}\r\n * @memberof BraintreeEndpointManagerInterface\r\n */\r\n submitData(request: DonationRequest): Promise<DonationResponse>;\r\n\r\n /**\r\n * Once the user is finished with the donation flow, either after\r\n * a monthly donation or an upsell, we notify the endpoint manager\r\n * so it can redirect the user to the thank you page.\r\n */\r\n donationSuccessful(options: {\r\n successResponse: SuccessResponse;\r\n upsellSuccessResponse?: SuccessResponse;\r\n }): void;\r\n}\r\n\r\nexport enum HostingEnvironment {\r\n Development = 'dev',\r\n Production = 'prod',\r\n}\r\n"]}
@@ -1,124 +1,124 @@
1
- import { DonationResponse, CustomerInfo, BillingInfo, DonationPaymentInfo, PaymentProvider, SuccessResponse } from '@internetarchive/donation-form-data-models';
2
- import { PaymentClientsInterface } from './payment-clients';
3
- import { BraintreeManagerInterface, BraintreeEndpointManagerInterface, HostingEnvironment, BraintreeManagerEvents } from './braintree-interfaces';
4
- import { HostedFieldConfiguration } from './payment-providers/credit-card/hosted-field-configuration';
5
- import { PromisedSingleton } from '@internetarchive/promised-singleton';
6
- import { PaymentProvidersInterface } from './payment-providers-interface';
7
- import { Unsubscribe } from 'nanoevents';
8
- /** @inheritdoc */
9
- export declare class BraintreeManager implements BraintreeManagerInterface {
10
- private referrer?;
11
- /**
12
- * The origin is made up of campaign / ABTest information that the user originated from.
13
- *
14
- * The field is a freeform string so it can be anything, but make sure it's something
15
- * identifiable so it can be queried in CiviCRM.
16
- *
17
- * For instance, we use this format for the Donation Banner:
18
- * - `{Source}-{Test Name}-{Variant Name}`, eg:
19
- * - `DonateBanner-Campaign Start 2020-IADefault`
20
- * - `DonateBanner-Mid Campaign-IAThermometer`
21
- *
22
- * For additional specificity, you could add additional info, ie.
23
- * - `DonateBanner-MidJuly2020 Campaign-VariantA-Button1`
24
- *
25
- * @private
26
- * @type {string}
27
- * @memberof BraintreeManager
28
- */
29
- private origin?;
30
- private loggedInUser?;
31
- /**
32
- * The Device Data token generated by the DataCollector.
33
- *
34
- * This gets submitted for several of the payment providers as an anti-fraud mechanism.
35
- *
36
- * @private
37
- * @type {string}
38
- * @memberof BraintreeManager
39
- */
40
- private deviceData?;
41
- private emitter;
42
- on<E extends keyof BraintreeManagerEvents>(event: E, callback: BraintreeManagerEvents[E]): Unsubscribe;
43
- /** @inheritdoc */
44
- paymentProviders: PaymentProvidersInterface;
45
- /** @inheritdoc */
46
- startup(): Promise<void>;
47
- /** @inheritdoc */
48
- instance: PromisedSingleton<import("../@types/braintree-web").Client>;
49
- /** @inheritdoc */
50
- submitDonation(options: {
51
- nonce: string;
52
- paymentProvider: PaymentProvider;
53
- donationInfo: DonationPaymentInfo;
54
- billingInfo: BillingInfo;
55
- customerInfo: CustomerInfo;
56
- upsellOnetimeTransactionId?: string;
57
- customerId?: string;
58
- recaptchaToken?: string;
59
- bin?: string;
60
- binName?: string;
61
- }): Promise<DonationResponse>;
62
- /** @inheritdoc */
63
- submitUpsellDonation(options: {
64
- oneTimeDonationResponse: SuccessResponse;
65
- amount: number;
66
- }): Promise<DonationResponse>;
67
- /** @inheritdoc */
68
- donationSuccessful(options: {
69
- successResponse: SuccessResponse;
70
- upsellSuccessResponse?: SuccessResponse;
71
- }): void;
72
- private deviceDataCollectionStarted;
73
- /**
74
- * Collect Braintree device data. This is used to help fraud detection.
75
- *
76
- * @private
77
- * @returns {Promise<void>}
78
- * @memberof BraintreeManager
79
- */
80
- private collectDeviceData;
81
- /**
82
- * Braintree Authorization Token
83
- *
84
- * @private
85
- * @type {string}
86
- * @memberof BraintreeManager
87
- */
88
- private authorizationToken;
89
- /**
90
- * The endpoint manager for network communications
91
- *
92
- * @private
93
- * @type {BraintreeEndpointManagerInterface}
94
- * @memberof BraintreeManager
95
- */
96
- private endpointManager;
97
- /**
98
- * The payment clients container containing the braintree, paypal, and google clients
99
- *
100
- * @private
101
- * @type {PaymentClientsInterface}
102
- * @memberof BraintreeManager
103
- */
104
- private paymentClients;
105
- private hostingEnvironment;
106
- constructor(options: {
107
- authorizationToken: string;
108
- paymentClients: PaymentClientsInterface;
109
- endpointManager: BraintreeEndpointManagerInterface;
110
- hostedFieldConfig: HostedFieldConfiguration;
111
- hostingEnvironment: HostingEnvironment;
112
- venmoProfileId?: string;
113
- googlePayMerchantId?: string;
114
- referrer?: string;
115
- loggedInUser?: string;
116
- origin?: string;
117
- });
118
- /** @inheritdoc */
119
- setReferrer(referrer: string): void;
120
- /** @inheritdoc */
121
- setLoggedInUser(loggedInUser: string): void;
122
- /** @inheritdoc */
123
- setOrigin(origin: string): void;
124
- }
1
+ import { DonationResponse, CustomerInfo, BillingInfo, DonationPaymentInfo, PaymentProvider, SuccessResponse } from '@internetarchive/donation-form-data-models';
2
+ import { PaymentClientsInterface } from './payment-clients';
3
+ import { BraintreeManagerInterface, BraintreeEndpointManagerInterface, HostingEnvironment, BraintreeManagerEvents } from './braintree-interfaces';
4
+ import { HostedFieldConfiguration } from './payment-providers/credit-card/hosted-field-configuration';
5
+ import { PromisedSingleton } from '@internetarchive/promised-singleton';
6
+ import { PaymentProvidersInterface } from './payment-providers-interface';
7
+ import { Unsubscribe } from 'nanoevents';
8
+ /** @inheritdoc */
9
+ export declare class BraintreeManager implements BraintreeManagerInterface {
10
+ private referrer?;
11
+ /**
12
+ * The origin is made up of campaign / ABTest information that the user originated from.
13
+ *
14
+ * The field is a freeform string so it can be anything, but make sure it's something
15
+ * identifiable so it can be queried in CiviCRM.
16
+ *
17
+ * For instance, we use this format for the Donation Banner:
18
+ * - `{Source}-{Test Name}-{Variant Name}`, eg:
19
+ * - `DonateBanner-Campaign Start 2020-IADefault`
20
+ * - `DonateBanner-Mid Campaign-IAThermometer`
21
+ *
22
+ * For additional specificity, you could add additional info, ie.
23
+ * - `DonateBanner-MidJuly2020 Campaign-VariantA-Button1`
24
+ *
25
+ * @private
26
+ * @type {string}
27
+ * @memberof BraintreeManager
28
+ */
29
+ private origin?;
30
+ private loggedInUser?;
31
+ /**
32
+ * The Device Data token generated by the DataCollector.
33
+ *
34
+ * This gets submitted for several of the payment providers as an anti-fraud mechanism.
35
+ *
36
+ * @private
37
+ * @type {string}
38
+ * @memberof BraintreeManager
39
+ */
40
+ private deviceData?;
41
+ private emitter;
42
+ on<E extends keyof BraintreeManagerEvents>(event: E, callback: BraintreeManagerEvents[E]): Unsubscribe;
43
+ /** @inheritdoc */
44
+ paymentProviders: PaymentProvidersInterface;
45
+ /** @inheritdoc */
46
+ startup(): Promise<void>;
47
+ /** @inheritdoc */
48
+ instance: PromisedSingleton<import("../@types/braintree-web").Client>;
49
+ /** @inheritdoc */
50
+ submitDonation(options: {
51
+ nonce: string;
52
+ paymentProvider: PaymentProvider;
53
+ donationInfo: DonationPaymentInfo;
54
+ billingInfo: BillingInfo;
55
+ customerInfo: CustomerInfo;
56
+ upsellOnetimeTransactionId?: string;
57
+ customerId?: string;
58
+ recaptchaToken?: string;
59
+ bin?: string;
60
+ binName?: string;
61
+ }): Promise<DonationResponse>;
62
+ /** @inheritdoc */
63
+ submitUpsellDonation(options: {
64
+ oneTimeDonationResponse: SuccessResponse;
65
+ amount: number;
66
+ }): Promise<DonationResponse>;
67
+ /** @inheritdoc */
68
+ donationSuccessful(options: {
69
+ successResponse: SuccessResponse;
70
+ upsellSuccessResponse?: SuccessResponse;
71
+ }): void;
72
+ private deviceDataCollectionStarted;
73
+ /**
74
+ * Collect Braintree device data. This is used to help fraud detection.
75
+ *
76
+ * @private
77
+ * @returns {Promise<void>}
78
+ * @memberof BraintreeManager
79
+ */
80
+ private collectDeviceData;
81
+ /**
82
+ * Braintree Authorization Token
83
+ *
84
+ * @private
85
+ * @type {string}
86
+ * @memberof BraintreeManager
87
+ */
88
+ private authorizationToken;
89
+ /**
90
+ * The endpoint manager for network communications
91
+ *
92
+ * @private
93
+ * @type {BraintreeEndpointManagerInterface}
94
+ * @memberof BraintreeManager
95
+ */
96
+ private endpointManager;
97
+ /**
98
+ * The payment clients container containing the braintree, paypal, and google clients
99
+ *
100
+ * @private
101
+ * @type {PaymentClientsInterface}
102
+ * @memberof BraintreeManager
103
+ */
104
+ private paymentClients;
105
+ private hostingEnvironment;
106
+ constructor(options: {
107
+ authorizationToken: string;
108
+ paymentClients: PaymentClientsInterface;
109
+ endpointManager: BraintreeEndpointManagerInterface;
110
+ hostedFieldConfig: HostedFieldConfiguration;
111
+ hostingEnvironment: HostingEnvironment;
112
+ venmoProfileId?: string;
113
+ googlePayMerchantId?: string;
114
+ referrer?: string;
115
+ loggedInUser?: string;
116
+ origin?: string;
117
+ });
118
+ /** @inheritdoc */
119
+ setReferrer(referrer: string): void;
120
+ /** @inheritdoc */
121
+ setLoggedInUser(loggedInUser: string): void;
122
+ /** @inheritdoc */
123
+ setOrigin(origin: string): void;
124
+ }