@justifi/webcomponents 6.0.0-rc.9 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (640) hide show
  1. package/dist/cjs/{Api-y2G49jOh.js → Api-CwTLkFY4.js} +2 -2
  2. package/dist/cjs/{Refund-BVZHsa6Z.js → Refund-BPSBtjQC.js} +3 -1
  3. package/dist/cjs/additional-questions-details_5.cjs.entry.js +3 -3
  4. package/dist/cjs/{badge-CcJ9H85-.js → badge-BmOSt4gS.js} +1 -1
  5. package/dist/cjs/bank-account-document-form-inputs_4.cjs.entry.js +9 -9
  6. package/dist/cjs/bank-account-form.cjs.entry.js +10 -15
  7. package/dist/cjs/business-details-core.cjs.entry.js +6 -21
  8. package/dist/cjs/{business.service-D5IhSyRJ.js → business.service-Dkhqyggm.js} +2 -2
  9. package/dist/cjs/{button-DsHDMHaa.js → button-7c2RN2yp.js} +2 -3
  10. package/dist/cjs/card-form.cjs.entry.js +10 -19
  11. package/dist/cjs/{check-pkg-version-VnhfIX0p.js → check-pkg-version-7FBAUhHw.js} +3 -3
  12. package/dist/cjs/{checkout.service-4aS641tN.js → checkout.service-LwZVVgP5.js} +2 -2
  13. package/dist/cjs/checkout.store-C3f3E24L.js +84 -0
  14. package/dist/cjs/checkouts-list-core.cjs.entry.js +11 -11
  15. package/dist/cjs/{payments-list-params-state-Cewmin_p.js → checkouts-list-params-state-C4c8UZtP.js} +1 -1
  16. package/dist/cjs/{checkouts-table-B_gpjGhs.js → checkouts-table-BQUhZZd_.js} +4 -6
  17. package/dist/cjs/{config-state-BBOZIS8x.js → config-state-B_gyIchD.js} +1 -1
  18. package/dist/cjs/custom-popper_2.cjs.entry.js +3 -3
  19. package/dist/cjs/{dispute.service-64ciJH0r.js → dispute.service-927Gzb0N.js} +2 -2
  20. package/dist/cjs/form-alert_5.cjs.entry.js +1 -1
  21. package/dist/cjs/form-control-checkbox.cjs.entry.js +5 -5
  22. package/dist/cjs/form-control-date.cjs.entry.js +4 -4
  23. package/dist/cjs/{form-control-error-text-B-P5UDhm.js → form-control-error-text-DD0dHGu8.js} +1 -1
  24. package/dist/cjs/form-control-file-v2_2.cjs.entry.js +5 -5
  25. package/dist/cjs/{form-control-help-text-JoZjhb9m.js → form-control-help-text-2QwKi78M.js} +1 -1
  26. package/dist/cjs/form-control-help-text.cjs.entry.js +1 -1
  27. package/dist/cjs/form-control-monetary-provisioning.cjs.entry.js +3 -3
  28. package/dist/cjs/form-control-monetary.cjs.entry.js +6 -6
  29. package/dist/cjs/form-control-number-masked_2.cjs.entry.js +4 -4
  30. package/dist/cjs/form-control-number.cjs.entry.js +5 -5
  31. package/dist/cjs/form-control-radio.cjs.entry.js +3 -3
  32. package/dist/cjs/form-control-select_2.cjs.entry.js +6 -6
  33. package/dist/cjs/{get-payment-details-DE5xUUpt.js → get-payment-details-BSxp1HX0.js} +2 -2
  34. package/dist/cjs/{get-subaccounts-CH477rHs.js → get-subaccounts-B31f95PR.js} +3 -3
  35. package/dist/cjs/gross-payment-chart-core.cjs.entry.js +5 -5
  36. package/dist/cjs/{header-1-DRA3f4Jh.js → header-1-DMsp0XM7.js} +1 -1
  37. package/dist/cjs/{header-3-sOdOpfx3.js → header-3-BSvFq_IF.js} +1 -1
  38. package/dist/cjs/hidden-input_2.cjs.entry.js +8 -8
  39. package/dist/cjs/{checkout.store-MSwLBCby.js → index-C2ITzalN.js} +29 -41
  40. package/dist/cjs/{index-B32W0A3m.js → index-D1Ba20gi.js} +1 -1
  41. package/dist/cjs/{index-C9hBD-32.js → index-Dyzl8Hn6.js} +8 -2
  42. package/dist/cjs/index.cjs.js +8 -0
  43. package/dist/cjs/{insurance-state-d2thhXUX.js → insurance-state-uWOl6jJN.js} +2 -2
  44. package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +9 -24
  45. package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +8 -8
  46. package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +9 -9
  47. package/dist/cjs/justifi-apple-pay.cjs.entry.js +177 -86
  48. package/dist/cjs/justifi-bank-account-billing-form-simple_9.cjs.entry.js +24 -42
  49. package/dist/cjs/justifi-business-details.cjs.entry.js +10 -10
  50. package/dist/cjs/justifi-business-form.cjs.entry.js +15 -30
  51. package/dist/cjs/justifi-business-representative-form-inputs.cjs.entry.js +1 -1
  52. package/dist/cjs/justifi-checkout-summary_7.cjs.entry.js +192 -164
  53. package/dist/cjs/justifi-checkout.cjs.entry.js +19 -11
  54. package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +8 -8
  55. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +14 -14
  56. package/dist/cjs/justifi-config-provider.cjs.entry.js +3 -3
  57. package/dist/cjs/justifi-details.cjs.entry.js +2 -2
  58. package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +2 -2
  59. package/dist/cjs/justifi-dispute-management.cjs.entry.js +10 -10
  60. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +15 -15
  61. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +9 -9
  62. package/dist/cjs/justifi-order-terminals.cjs.entry.js +16 -44
  63. package/dist/cjs/justifi-owner-form_3.cjs.entry.js +8 -8
  64. package/dist/cjs/justifi-payment-details.cjs.entry.js +11 -11
  65. package/dist/cjs/justifi-payment-provisioning-core.cjs.entry.js +3 -3
  66. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +9 -9
  67. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +14 -16
  68. package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +7 -7
  69. package/dist/cjs/justifi-payments-list.cjs.entry.js +14 -14
  70. package/dist/cjs/justifi-payout-details.cjs.entry.js +10 -10
  71. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +16 -22
  72. package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +7 -7
  73. package/dist/cjs/justifi-payouts-list.cjs.entry.js +15 -15
  74. package/dist/cjs/justifi-refund-payment.cjs.entry.js +15 -21
  75. package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +1 -1
  76. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +14 -25
  77. package/dist/cjs/justifi-skeleton.cjs.entry.js +4 -4
  78. package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +9 -9
  79. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +12 -12
  80. package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +8 -8
  81. package/dist/cjs/justifi-terminals-list.cjs.entry.js +14 -14
  82. package/dist/cjs/loader.cjs.js +2 -2
  83. package/dist/cjs/{package-BS0_inF6.js → package-BNN5fdIc.js} +1 -1
  84. package/dist/cjs/pagination-menu.cjs.entry.js +1 -1
  85. package/dist/cjs/payment-details-core.cjs.entry.js +16 -28
  86. package/dist/cjs/payment-method-option.cjs.entry.js +3 -3
  87. package/dist/cjs/{payment.service--kzMop3L.js → payment.service-DUq-W7tS.js} +2 -2
  88. package/dist/cjs/payments-list-core.cjs.entry.js +12 -12
  89. package/dist/cjs/{payouts-list-params-state-Cewmin_p.js → payments-list-params-state-C4c8UZtP.js} +1 -1
  90. package/dist/cjs/{payments-status-DXRh_ekP.js → payments-status-3iIQkoov.js} +2 -2
  91. package/dist/cjs/{payments-table-DFRtk-T9.js → payments-table-BSHUQhM-.js} +4 -6
  92. package/dist/cjs/payout-details-core.cjs.entry.js +12 -24
  93. package/dist/cjs/{payout.service-D3omzNG_.js → payout.service-DoKMr8Xw.js} +2 -2
  94. package/dist/cjs/payouts-list-core.cjs.entry.js +12 -12
  95. package/dist/cjs/{terminal-orders-list-params-state-Cewmin_p.js → payouts-list-params-state-C4c8UZtP.js} +1 -1
  96. package/dist/cjs/{payouts-status-DxTQZv3i.js → payouts-status-DoQbxIms.js} +2 -2
  97. package/dist/cjs/{payouts-table-DE3t0x93.js → payouts-table-BD_Fhz_j.js} +5 -7
  98. package/dist/cjs/{skeleton-C7DQRD6r.js → skeleton-CuIMC98G.js} +1 -1
  99. package/dist/cjs/spinner-CMZXdrPe.js +10 -0
  100. package/dist/cjs/{styled-host-BfVJlAsJ.js → styled-host-2KXbjOFw.js} +2 -4
  101. package/dist/cjs/{table-Ccdrt0v_.js → table-DlQCUVag.js} +5 -11
  102. package/dist/cjs/table-filters-menu.cjs.entry.js +3 -3
  103. package/dist/cjs/terminal-orders-list-core.cjs.entry.js +11 -11
  104. package/dist/cjs/{checkouts-list-params-state-Cewmin_p.js → terminal-orders-list-params-state-C4c8UZtP.js} +1 -1
  105. package/dist/cjs/{terminal-orders-table-B1LJitwE.js → terminal-orders-table-t6XxNy_K.js} +7 -11
  106. package/dist/cjs/terminal-quantity-selector.cjs.entry.js +2 -2
  107. package/dist/cjs/{terminal.service-BOvYfpQW.js → terminal.service-Iyje71vN.js} +2 -2
  108. package/dist/cjs/terminals-list-core.cjs.entry.js +11 -11
  109. package/dist/cjs/terminals-list-params-state-C4c8UZtP.js +22 -0
  110. package/dist/cjs/{terminals-table-DYt7exFQ.js → terminals-table-BTdKRiBN.js} +3 -3
  111. package/dist/cjs/{utils-BaGF9XIe.js → utils-ChCUZgUy.js} +6 -0
  112. package/dist/cjs/utils-FFP5ZHyE.js +18 -0
  113. package/dist/cjs/webcomponents.cjs.js +3 -3
  114. package/dist/collection/api/Payment.js +2 -0
  115. package/dist/collection/api/index.js +1 -2
  116. package/dist/collection/api/services/apple-pay.service.js +95 -8
  117. package/dist/collection/collection-manifest.json +2 -2
  118. package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +6 -3
  119. package/dist/collection/components/checkout/card-form/card-form.js +6 -3
  120. package/dist/collection/components/checkout/checkout.js +16 -1
  121. package/dist/collection/components/checkout/save-new-payment-method.js +26 -1
  122. package/dist/collection/components/checkouts-list/checkouts-list-core.js +1 -1
  123. package/dist/collection/components/checkouts-list/checkouts-list-filters.js +1 -1
  124. package/dist/collection/components/checkouts-list/checkouts-list.js +1 -1
  125. package/dist/collection/components/dispute-management/dispute-management-core.js +1 -1
  126. package/dist/collection/components/dispute-management/dispute-management.js +1 -1
  127. package/dist/collection/components/dispute-management/dispute-notification.js +1 -1
  128. package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +1 -1
  129. package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +1 -1
  130. package/dist/collection/components/dispute-management/dispute-response/customer-details.js +1 -1
  131. package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
  132. package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +1 -1
  133. package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +1 -1
  134. package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +1 -1
  135. package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +1 -1
  136. package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +1 -1
  137. package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +1 -1
  138. package/dist/collection/components/filters/table-filters-menu.js +1 -1
  139. package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +1 -1
  140. package/dist/collection/components/modular-checkout/ModularCheckout.js +27 -0
  141. package/dist/collection/components/modular-checkout/modular-checkout.js +104 -70
  142. package/dist/collection/components/modular-checkout/sub-components/apple-pay-skeleton.js +2 -2
  143. package/dist/collection/components/modular-checkout/sub-components/apple-pay.js +72 -70
  144. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +2 -2
  145. package/dist/collection/components/modular-checkout/sub-components/card-form.js +2 -2
  146. package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +1 -1
  147. package/dist/collection/components/modular-checkout/sub-components/plaid-payment-method.js +57 -65
  148. package/dist/collection/components/modular-checkout/sub-components/plaid-payment-method.test.js +8 -6
  149. package/dist/collection/components/modular-checkout/sub-components/saved-payment-methods.js +8 -10
  150. package/dist/collection/components/modular-checkout/sub-components/sezzle-payment-method.js +22 -7
  151. package/dist/collection/components/modular-checkout/sub-components/summary.js +1 -1
  152. package/dist/collection/components/order-terminals/order-terminals.js +1 -1
  153. package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +1 -1
  154. package/dist/collection/components/payment-details/payment-details-core.js +8 -8
  155. package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +1 -1
  156. package/dist/collection/components/payments-list/payments-list-core.js +1 -1
  157. package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
  158. package/dist/collection/components/payments-list/payments-list.js +1 -1
  159. package/dist/collection/components/payout-details/payout-details-core.js +3 -3
  160. package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +1 -1
  161. package/dist/collection/components/payouts-list/payouts-list-core.js +1 -1
  162. package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
  163. package/dist/collection/components/payouts-list/payouts-list.js +1 -1
  164. package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +1 -1
  165. package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
  166. package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +1 -1
  167. package/dist/collection/components/terminals-list/terminals-list-core.js +1 -1
  168. package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
  169. package/dist/collection/components/terminals-list/terminals-list.js +1 -1
  170. package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +29 -10
  171. package/dist/collection/index.js +1 -0
  172. package/dist/collection/store/checkout.store.js +46 -3
  173. package/dist/collection/ui-components/custom-popper/custom-popper.js +2 -2
  174. package/dist/collection/ui-components/form/form-control-checkbox.js +2 -2
  175. package/dist/collection/ui-components/form/form-control-date.js +2 -2
  176. package/dist/collection/ui-components/form/form-control-file-v2.js +1 -1
  177. package/dist/collection/ui-components/form/form-control-file.js +2 -2
  178. package/dist/collection/ui-components/form/form-control-monetary.js +2 -2
  179. package/dist/collection/ui-components/form/form-control-number-masked.js +2 -2
  180. package/dist/collection/ui-components/form/form-control-number.js +2 -2
  181. package/dist/collection/ui-components/form/form-control-radio.js +5 -5
  182. package/dist/collection/ui-components/form/form-control-select.js +2 -2
  183. package/dist/collection/ui-components/form/form-control-text.js +2 -2
  184. package/dist/collection/ui-components/form/form-control-textarea.js +2 -2
  185. package/dist/collection/ui-components/form/hidden-input.js +1 -1
  186. package/dist/collection/ui-components/form/iframe-input.js +3 -3
  187. package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +1 -1
  188. package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +1 -1
  189. package/dist/collection/ui-components/shadow-dom-components/justifi-radio-list-item.js +4 -4
  190. package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +1 -1
  191. package/dist/collection/utils/utils.js +5 -0
  192. package/dist/docs.json +153 -97
  193. package/dist/esm/{Api-C1I68Tfr.js → Api-D4tj-h4P.js} +2 -2
  194. package/dist/esm/{Refund-kKW8S1h6.js → Refund-Bc5By0lb.js} +3 -1
  195. package/dist/esm/additional-questions-details_5.entry.js +3 -3
  196. package/dist/esm/{badge-DSYSJcRy.js → badge-ChwzCNAF.js} +1 -1
  197. package/dist/esm/bank-account-document-form-inputs_4.entry.js +9 -9
  198. package/dist/esm/bank-account-form.entry.js +10 -15
  199. package/dist/esm/business-details-core.entry.js +6 -21
  200. package/dist/esm/{business.service-B3wlBl1x.js → business.service-CsbtEDNi.js} +2 -2
  201. package/dist/esm/{button-CpllL0At.js → button-SAIS_5os.js} +2 -3
  202. package/dist/esm/card-form.entry.js +10 -19
  203. package/dist/esm/{check-pkg-version-CGQdCjwh.js → check-pkg-version-BUkwdVdm.js} +3 -3
  204. package/dist/esm/{checkout.service-KDp7tISm.js → checkout.service-BCkQ9pOA.js} +2 -2
  205. package/dist/esm/checkout.store-DBvS7cVB.js +79 -0
  206. package/dist/esm/checkouts-list-core.entry.js +11 -11
  207. package/dist/esm/{checkouts-list-params-state-D8tzsGR_.js → checkouts-list-params-state-C2_GlMKR.js} +1 -1
  208. package/dist/esm/{checkouts-table-QOdiLpak.js → checkouts-table-CItEo0DU.js} +4 -6
  209. package/dist/esm/{config-state-DZeVYerv.js → config-state-Blo0ywwc.js} +1 -1
  210. package/dist/esm/custom-popper_2.entry.js +3 -3
  211. package/dist/esm/{dispute.service-DEZEPwn-.js → dispute.service-CyLtJREK.js} +2 -2
  212. package/dist/esm/form-alert_5.entry.js +1 -1
  213. package/dist/esm/form-control-checkbox.entry.js +5 -5
  214. package/dist/esm/form-control-date.entry.js +4 -4
  215. package/dist/esm/{form-control-error-text-R7U07nTg.js → form-control-error-text-IXJJ4JpV.js} +1 -1
  216. package/dist/esm/form-control-file-v2_2.entry.js +5 -5
  217. package/dist/esm/{form-control-help-text-CRLH-2f7.js → form-control-help-text-CuhIsM3v.js} +1 -1
  218. package/dist/esm/form-control-help-text.entry.js +1 -1
  219. package/dist/esm/form-control-monetary-provisioning.entry.js +3 -3
  220. package/dist/esm/form-control-monetary.entry.js +6 -6
  221. package/dist/esm/form-control-number-masked_2.entry.js +4 -4
  222. package/dist/esm/form-control-number.entry.js +5 -5
  223. package/dist/esm/form-control-radio.entry.js +3 -3
  224. package/dist/esm/form-control-select_2.entry.js +6 -6
  225. package/dist/esm/{get-payment-details-CYASKLT7.js → get-payment-details-BuT0QNOo.js} +2 -2
  226. package/dist/esm/{get-subaccounts-E0PYy_pc.js → get-subaccounts-VjY6-x_9.js} +3 -3
  227. package/dist/esm/gross-payment-chart-core.entry.js +5 -5
  228. package/dist/esm/{header-1-3M9If0gM.js → header-1-zXsamUS3.js} +1 -1
  229. package/dist/esm/{header-3-CWa41YWq.js → header-3-DVtaUAlf.js} +1 -1
  230. package/dist/esm/hidden-input_2.entry.js +8 -8
  231. package/dist/esm/{checkout.store-UMe84fjY.js → index-DCIW8z1f.js} +27 -38
  232. package/dist/esm/{index-B_KxSZIF.js → index-ZfXl6Xrm.js} +1 -1
  233. package/dist/esm/{index-Bn7inNWG.js → index-qipqIMyC.js} +8 -2
  234. package/dist/esm/index.js +1 -1
  235. package/dist/esm/{insurance-state-CTalqbNa.js → insurance-state-Dh9f36Qh.js} +2 -2
  236. package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +9 -24
  237. package/dist/esm/justifi-additional-questions-form-step_9.entry.js +8 -8
  238. package/dist/esm/justifi-additional-statement_8.entry.js +9 -9
  239. package/dist/esm/justifi-apple-pay.entry.js +177 -86
  240. package/dist/esm/justifi-bank-account-billing-form-simple_9.entry.js +24 -42
  241. package/dist/esm/justifi-business-details.entry.js +10 -10
  242. package/dist/esm/justifi-business-form.entry.js +15 -30
  243. package/dist/esm/justifi-business-representative-form-inputs.entry.js +1 -1
  244. package/dist/esm/justifi-checkout-summary_7.entry.js +185 -157
  245. package/dist/esm/justifi-checkout.entry.js +19 -11
  246. package/dist/esm/justifi-checkouts-list-filters.entry.js +8 -8
  247. package/dist/esm/justifi-checkouts-list.entry.js +14 -14
  248. package/dist/esm/justifi-config-provider.entry.js +3 -3
  249. package/dist/esm/justifi-details.entry.js +2 -2
  250. package/dist/esm/justifi-dispute-management-core.entry.js +2 -2
  251. package/dist/esm/justifi-dispute-management.entry.js +10 -10
  252. package/dist/esm/justifi-dispute-notification_3.entry.js +15 -15
  253. package/dist/esm/justifi-gross-payment-chart.entry.js +9 -9
  254. package/dist/esm/justifi-order-terminals.entry.js +16 -44
  255. package/dist/esm/justifi-owner-form_3.entry.js +8 -8
  256. package/dist/esm/justifi-payment-details.entry.js +11 -11
  257. package/dist/esm/justifi-payment-provisioning-core.entry.js +3 -3
  258. package/dist/esm/justifi-payment-provisioning.entry.js +9 -9
  259. package/dist/esm/justifi-payment-transactions-list.entry.js +14 -16
  260. package/dist/esm/justifi-payments-list-filters.entry.js +7 -7
  261. package/dist/esm/justifi-payments-list.entry.js +14 -14
  262. package/dist/esm/justifi-payout-details.entry.js +10 -10
  263. package/dist/esm/justifi-payout-transactions-list.entry.js +16 -22
  264. package/dist/esm/justifi-payouts-list-filters.entry.js +7 -7
  265. package/dist/esm/justifi-payouts-list.entry.js +15 -15
  266. package/dist/esm/justifi-refund-payment.entry.js +15 -21
  267. package/dist/esm/justifi-saved-payment-method.entry.js +1 -1
  268. package/dist/esm/justifi-season-interruption-insurance.entry.js +14 -25
  269. package/dist/esm/justifi-skeleton.entry.js +4 -4
  270. package/dist/esm/justifi-terminal-orders-list-filters.entry.js +9 -9
  271. package/dist/esm/justifi-terminal-orders-list.entry.js +12 -12
  272. package/dist/esm/justifi-terminals-list-filters.entry.js +8 -8
  273. package/dist/esm/justifi-terminals-list.entry.js +14 -14
  274. package/dist/esm/loader.js +3 -3
  275. package/dist/esm/{package-BiWRKUx3.js → package-BBpkkt2-.js} +1 -1
  276. package/dist/esm/pagination-menu.entry.js +1 -1
  277. package/dist/esm/payment-details-core.entry.js +16 -28
  278. package/dist/esm/payment-method-option.entry.js +3 -3
  279. package/dist/esm/{payment.service-uJpJaX2Z.js → payment.service-QJEmd6Nl.js} +2 -2
  280. package/dist/esm/payments-list-core.entry.js +12 -12
  281. package/dist/esm/{payments-list-params-state-D8tzsGR_.js → payments-list-params-state-C2_GlMKR.js} +1 -1
  282. package/dist/esm/{payments-status-5orNU2Rd.js → payments-status-DDafc8Yr.js} +2 -2
  283. package/dist/esm/{payments-table-B0uyodyJ.js → payments-table-De3Jb6rY.js} +4 -6
  284. package/dist/esm/payout-details-core.entry.js +12 -24
  285. package/dist/esm/{payout.service-ClUgtbbb.js → payout.service-XxyEr0rj.js} +2 -2
  286. package/dist/esm/payouts-list-core.entry.js +12 -12
  287. package/dist/esm/{payouts-list-params-state-D8tzsGR_.js → payouts-list-params-state-C2_GlMKR.js} +1 -1
  288. package/dist/esm/{payouts-status-CZPwa2AE.js → payouts-status-u1eSRz3Q.js} +2 -2
  289. package/dist/esm/{payouts-table-CaCSX_0q.js → payouts-table-BO-MCzXj.js} +5 -7
  290. package/dist/esm/{skeleton-qMb0_Cjy.js → skeleton-DtpkgjZ6.js} +1 -1
  291. package/dist/esm/spinner-CIXUVK4F.js +8 -0
  292. package/dist/esm/{styled-host-CTAGIN84.js → styled-host-CbizlfAU.js} +2 -4
  293. package/dist/esm/{table-Br3n9Xu-.js → table-DcRHK_sm.js} +5 -11
  294. package/dist/esm/table-filters-menu.entry.js +3 -3
  295. package/dist/esm/terminal-orders-list-core.entry.js +11 -11
  296. package/dist/esm/{terminal-orders-list-params-state-D8tzsGR_.js → terminal-orders-list-params-state-C2_GlMKR.js} +1 -1
  297. package/dist/esm/{terminal-orders-table-DPtof5Zb.js → terminal-orders-table-9nsnrAq8.js} +7 -11
  298. package/dist/esm/terminal-quantity-selector.entry.js +2 -2
  299. package/dist/esm/{terminal.service-ClNtE3e-.js → terminal.service-D2oETGnk.js} +2 -2
  300. package/dist/esm/terminals-list-core.entry.js +11 -11
  301. package/dist/esm/terminals-list-params-state-C2_GlMKR.js +16 -0
  302. package/dist/esm/{terminals-table-ClkR_jrC.js → terminals-table-C6NO2m-t.js} +3 -3
  303. package/dist/esm/{utils-lb8p1Exq.js → utils-BscIVFn8.js} +6 -1
  304. package/dist/esm/utils-_ckvHjSW.js +11 -0
  305. package/dist/esm/webcomponents.js +4 -4
  306. package/dist/module/ModularCheckout.js +57 -0
  307. package/dist/module/Refund.js +2 -0
  308. package/dist/module/additional-questions-details2.js +4 -2
  309. package/dist/module/additional-questions.js +4 -2
  310. package/dist/module/additional-statement.js +5 -3
  311. package/dist/module/bank-account-billing-form-simple.js +4 -2
  312. package/dist/module/bank-account-document-inputs.js +4 -2
  313. package/dist/module/bank-account-form-inputs2.js +4 -2
  314. package/dist/module/bank-account-form.js +10 -13
  315. package/dist/module/bank-account.js +7 -13
  316. package/dist/module/billing-form-full.js +4 -2
  317. package/dist/module/billing-form.js +4 -2
  318. package/dist/module/business-additional-questions-form-step-core.js +4 -2
  319. package/dist/module/business-additional-questions-form-step.js +4 -2
  320. package/dist/module/business-bank-account-form-step-core.js +4 -2
  321. package/dist/module/business-bank-account-form-step.js +4 -2
  322. package/dist/module/business-core-info-form-step-core.js +4 -2
  323. package/dist/module/business-core-info-form-step.js +4 -2
  324. package/dist/module/business-core-info.js +4 -2
  325. package/dist/module/business-details-core2.js +6 -19
  326. package/dist/module/business-documents-on-file2.js +4 -2
  327. package/dist/module/business-owners-form-step-core.js +4 -2
  328. package/dist/module/business-owners-form-step.js +4 -2
  329. package/dist/module/business-representative-form-inputs.js +4 -2
  330. package/dist/module/business-representative-form-step-core.js +4 -2
  331. package/dist/module/business-representative-form-step.js +4 -2
  332. package/dist/module/business-representative.js +4 -2
  333. package/dist/module/business-terms-conditions-form-step.js +4 -2
  334. package/dist/module/button.js +1 -2
  335. package/dist/module/cancellation-policy.js +5 -3
  336. package/dist/module/card-billing-form-simple.js +4 -2
  337. package/dist/module/card-form.js +10 -17
  338. package/dist/module/card-form2.js +7 -17
  339. package/dist/module/checkout.store.js +42 -31
  340. package/dist/module/checkouts-list-core2.js +6 -6
  341. package/dist/module/core-info-details2.js +4 -2
  342. package/dist/module/custom-popper2.js +6 -4
  343. package/dist/module/customer-details.js +5 -3
  344. package/dist/module/details.js +4 -2
  345. package/dist/module/dispute-management-core.js +5 -3
  346. package/dist/module/dispute-notification.js +5 -3
  347. package/dist/module/dispute-response-core.js +5 -3
  348. package/dist/module/dispute-response.js +5 -3
  349. package/dist/module/duplicate-charge.js +5 -3
  350. package/dist/module/electronic-evidence.js +5 -3
  351. package/dist/module/form-alert2.js +4 -2
  352. package/dist/module/form-control-checkbox2.js +6 -4
  353. package/dist/module/form-control-date2.js +6 -4
  354. package/dist/module/form-control-file-v22.js +5 -3
  355. package/dist/module/form-control-file2.js +6 -4
  356. package/dist/module/form-control-help-text2.js +4 -2
  357. package/dist/module/form-control-monetary-provisioning2.js +4 -2
  358. package/dist/module/form-control-monetary2.js +6 -4
  359. package/dist/module/form-control-number-masked2.js +6 -4
  360. package/dist/module/form-control-number.js +6 -4
  361. package/dist/module/form-control-radio2.js +7 -5
  362. package/dist/module/form-control-select2.js +6 -4
  363. package/dist/module/form-control-text2.js +6 -4
  364. package/dist/module/form-control-textarea2.js +6 -4
  365. package/dist/module/form-control-tooltip2.js +4 -2
  366. package/dist/module/gross-payment-chart-core2.js +6 -4
  367. package/dist/module/hidden-input2.js +5 -3
  368. package/dist/module/identity-address-form.js +4 -2
  369. package/dist/module/iframe-input2.js +7 -5
  370. package/dist/module/index.js +1 -0
  371. package/dist/module/justifi-apple-pay.js +174 -86
  372. package/dist/module/justifi-business-details.js +4 -2
  373. package/dist/module/justifi-business-form.js +6 -19
  374. package/dist/module/justifi-button2.js +5 -3
  375. package/dist/module/justifi-checkout.js +15 -4
  376. package/dist/module/justifi-checkouts-list-filters.js +5 -3
  377. package/dist/module/justifi-checkouts-list.js +5 -3
  378. package/dist/module/justifi-config-provider.js +4 -2
  379. package/dist/module/justifi-dispute-management.js +5 -3
  380. package/dist/module/justifi-gross-payment-chart.js +4 -2
  381. package/dist/module/justifi-header2.js +5 -3
  382. package/dist/module/justifi-order-terminals.js +9 -35
  383. package/dist/module/justifi-payment-details.js +4 -2
  384. package/dist/module/justifi-payment-provisioning.js +4 -2
  385. package/dist/module/justifi-payment-transactions-list.js +6 -6
  386. package/dist/module/justifi-payments-list-filters.js +6 -4
  387. package/dist/module/justifi-payments-list.js +5 -3
  388. package/dist/module/justifi-payout-details.js +4 -2
  389. package/dist/module/justifi-payout-transactions-list.js +8 -12
  390. package/dist/module/justifi-payouts-list-filters.js +6 -4
  391. package/dist/module/justifi-payouts-list.js +5 -3
  392. package/dist/module/justifi-radio-list-item2.js +6 -4
  393. package/dist/module/justifi-refund-payment.js +6 -10
  394. package/dist/module/justifi-saved-payment-method.js +4 -2
  395. package/dist/module/justifi-season-interruption-insurance.js +6 -16
  396. package/dist/module/justifi-skeleton.js +5 -3
  397. package/dist/module/justifi-terminal-orders-list-filters.js +6 -4
  398. package/dist/module/justifi-terminal-orders-list.js +5 -3
  399. package/dist/module/justifi-terminals-list-filters.js +5 -3
  400. package/dist/module/justifi-terminals-list.js +5 -3
  401. package/dist/module/legal-address-details2.js +4 -2
  402. package/dist/module/legal-address-form-step-core.js +4 -2
  403. package/dist/module/legal-address-form-step.js +4 -2
  404. package/dist/module/legal-address-form.js +4 -2
  405. package/dist/module/modular-checkout.js +94 -39
  406. package/dist/module/owner-details2.js +4 -2
  407. package/dist/module/owner-form-core2.js +4 -2
  408. package/dist/module/owner-form-inputs2.js +4 -2
  409. package/dist/module/owner-form.js +4 -2
  410. package/dist/module/package.js +1 -1
  411. package/dist/module/pagination-menu2.js +4 -2
  412. package/dist/module/payment-details-core2.js +13 -23
  413. package/dist/module/payment-method-option.js +5 -3
  414. package/dist/module/payment-provisioning-core.js +4 -2
  415. package/dist/module/payment-provisioning-form-buttons.js +4 -2
  416. package/dist/module/payment-provisioning-form-steps.js +4 -2
  417. package/dist/module/payment-provisioning-loading.js +2 -17
  418. package/dist/module/payments-list-core2.js +6 -6
  419. package/dist/module/payout-details-core2.js +8 -18
  420. package/dist/module/payouts-list-core2.js +7 -7
  421. package/dist/module/plaid-payment-method.js +49 -104
  422. package/dist/module/plaid.service.js +26 -0
  423. package/dist/module/product-or-service.js +5 -3
  424. package/dist/module/refund-policy.js +5 -3
  425. package/dist/module/representative-details2.js +4 -2
  426. package/dist/module/save-new-payment-method.js +7 -3
  427. package/dist/module/saved-payment-methods.js +13 -12
  428. package/dist/module/sezzle-payment-method.js +14 -24
  429. package/dist/module/shipping-details.js +5 -3
  430. package/dist/module/spinner.js +1 -3
  431. package/dist/module/styled-host.js +1 -3
  432. package/dist/module/summary.js +5 -3
  433. package/dist/module/table-filters-menu2.js +5 -3
  434. package/dist/module/table.js +3 -9
  435. package/dist/module/terminal-orders-list-core2.js +7 -9
  436. package/dist/module/terminal-quantity-selector2.js +5 -3
  437. package/dist/module/terminals-list-core2.js +6 -4
  438. package/dist/module/tokenize-payment-method.js +16 -12
  439. package/dist/module/utils.js +5 -16
  440. package/dist/module/utils2.js +6 -1
  441. package/dist/types/api/Checkout.d.ts +7 -15
  442. package/dist/types/api/Payment.d.ts +3 -1
  443. package/dist/types/api/index.d.ts +2 -2
  444. package/dist/types/api/services/apple-pay.service.d.ts +7 -0
  445. package/dist/types/components/checkout/bank-account-form/bank-account-form.d.ts +1 -0
  446. package/dist/types/components/checkout/card-form/card-form.d.ts +1 -0
  447. package/dist/types/components/checkout/checkout.d.ts +5 -0
  448. package/dist/types/components/checkout/save-new-payment-method.d.ts +1 -0
  449. package/dist/types/components/modular-checkout/ModularCheckout.d.ts +41 -0
  450. package/dist/types/components/modular-checkout/modular-checkout.d.ts +5 -5
  451. package/dist/types/components/modular-checkout/sub-components/apple-pay-skeleton.d.ts +1 -1
  452. package/dist/types/components/modular-checkout/sub-components/apple-pay.d.ts +9 -3
  453. package/dist/types/components/modular-checkout/sub-components/plaid-payment-method.d.ts +1 -2
  454. package/dist/types/components/modular-checkout/sub-components/saved-payment-methods.d.ts +3 -3
  455. package/dist/types/components/modular-checkout/sub-components/sezzle-payment-method.d.ts +1 -1
  456. package/dist/types/components/tokenize-payment-method/tokenize-payment-method.d.ts +2 -1
  457. package/dist/types/components.d.ts +23 -19
  458. package/dist/types/index.d.ts +4 -0
  459. package/dist/types/stencil-public-runtime.d.ts +21 -0
  460. package/dist/types/store/checkout.store.d.ts +12 -5
  461. package/dist/types/ui-components/form/form-control-radio.d.ts +1 -1
  462. package/dist/types/ui-components/shadow-dom-components/justifi-radio-list-item.d.ts +1 -1
  463. package/dist/types/utils/utils.d.ts +1 -0
  464. package/dist/webcomponents/index.esm.js +1 -0
  465. package/dist/webcomponents/p-005efe51.entry.js +1 -0
  466. package/dist/webcomponents/p-0142114f.entry.js +1 -0
  467. package/dist/webcomponents/{p-54ca3070.entry.js → p-0801324e.entry.js} +1 -1
  468. package/dist/webcomponents/p-0d8fe5f2.entry.js +1 -0
  469. package/dist/webcomponents/{p-613421d4.entry.js → p-146de253.entry.js} +1 -1
  470. package/dist/webcomponents/p-17f7590c.entry.js +1 -0
  471. package/dist/webcomponents/{p-9846b23d.entry.js → p-1b7926f6.entry.js} +1 -1
  472. package/dist/webcomponents/{p-44450a94.entry.js → p-20f036cc.entry.js} +1 -1
  473. package/dist/webcomponents/{p-f13ae573.entry.js → p-2246aa69.entry.js} +1 -1
  474. package/dist/webcomponents/p-246ef4ff.entry.js +1 -0
  475. package/dist/webcomponents/p-25484e99.entry.js +1 -0
  476. package/dist/webcomponents/{p-4e3bf98f.entry.js → p-265d0a1d.entry.js} +1 -1
  477. package/dist/webcomponents/{p-4213d10e.entry.js → p-27fc3ef0.entry.js} +3 -3
  478. package/dist/webcomponents/{p-aeeb0f68.entry.js → p-2a43e77f.entry.js} +1 -1
  479. package/dist/webcomponents/p-30c414b5.entry.js +1 -0
  480. package/dist/webcomponents/{p-497632ad.entry.js → p-3152c84f.entry.js} +1 -1
  481. package/dist/webcomponents/p-3546a5aa.entry.js +1 -0
  482. package/dist/webcomponents/p-3621a429.entry.js +1 -0
  483. package/dist/webcomponents/p-3906296f.entry.js +1 -0
  484. package/dist/webcomponents/{p-f1cba43c.entry.js → p-3d37045d.entry.js} +1 -1
  485. package/dist/webcomponents/p-3e320c0d.entry.js +1 -0
  486. package/dist/webcomponents/p-406ba650.entry.js +1 -0
  487. package/dist/webcomponents/p-44d1341c.entry.js +1 -0
  488. package/dist/webcomponents/{p-6255c685.entry.js → p-44e32f85.entry.js} +1 -1
  489. package/dist/webcomponents/p-4ea83bfd.entry.js +1 -0
  490. package/dist/webcomponents/p-558f7967.entry.js +1 -0
  491. package/dist/webcomponents/p-5c3d8de5.entry.js +1 -0
  492. package/dist/webcomponents/p-5c477f08.entry.js +1 -0
  493. package/dist/webcomponents/p-68329f16.entry.js +1 -0
  494. package/dist/webcomponents/p-6fdc03bc.entry.js +1 -0
  495. package/dist/webcomponents/p-6fe79f16.entry.js +1 -0
  496. package/dist/webcomponents/p-7aeb20d2.entry.js +1 -0
  497. package/dist/webcomponents/p-7b103dad.entry.js +1 -0
  498. package/dist/webcomponents/{p-28618e6f.entry.js → p-7c5cd118.entry.js} +1 -1
  499. package/dist/webcomponents/{p-36d9d95a.entry.js → p-7cb6cc9f.entry.js} +1 -1
  500. package/dist/webcomponents/p-7e04d5af.entry.js +1 -0
  501. package/dist/webcomponents/p-82781411.entry.js +1 -0
  502. package/dist/webcomponents/p-84043580.entry.js +1 -0
  503. package/dist/webcomponents/p-8467851a.entry.js +1 -0
  504. package/dist/webcomponents/{p-95cbb655.entry.js → p-8d3f5638.entry.js} +1 -1
  505. package/dist/webcomponents/p-906fdf0c.entry.js +1 -0
  506. package/dist/webcomponents/{p-9a2c044f.entry.js → p-90e43440.entry.js} +1 -1
  507. package/dist/webcomponents/p-95348ff6.entry.js +1 -0
  508. package/dist/webcomponents/{p-15705e8a.entry.js → p-9c4079cc.entry.js} +1 -1
  509. package/dist/webcomponents/{p-43c5f490.entry.js → p-9d7b5d07.entry.js} +1 -1
  510. package/dist/webcomponents/{p-bc2da364.entry.js → p-9fc464eb.entry.js} +1 -1
  511. package/dist/webcomponents/{p-0mMX1Zv4.js → p-B4idKqyn.js} +1 -1
  512. package/dist/webcomponents/p-BBpkkt2-.js +1 -0
  513. package/dist/webcomponents/{p-zdIeCUeh.js → p-BHf9IqGw.js} +1 -1
  514. package/dist/webcomponents/{p-DNo0OPOP.js → p-BIPdn2VU.js} +1 -1
  515. package/dist/webcomponents/{p-BPtcGAzB.js → p-BUa0YOaw.js} +1 -1
  516. package/dist/webcomponents/{p-B8iBcmNu.js → p-BY2p6Sxk.js} +1 -1
  517. package/dist/webcomponents/{p-CB0mCq1M.js → p-BZ7C9duj.js} +1 -1
  518. package/dist/webcomponents/{p-DGmp4ErD.js → p-BdLLGV9t.js} +1 -1
  519. package/dist/webcomponents/p-BguBT6Hn.js +1 -0
  520. package/dist/webcomponents/{p-DhGNCW2f.js → p-Bp_QFeog.js} +1 -1
  521. package/dist/webcomponents/{p-B71k50jz.js → p-Bvp7uul3.js} +1 -1
  522. package/dist/webcomponents/{p-CvG-itHC.js → p-C1xGBPma.js} +1 -1
  523. package/dist/webcomponents/p-C3n7-tlg.js +1 -0
  524. package/dist/webcomponents/{p-DxqCFDtF.js → p-CLQx9p9q.js} +1 -1
  525. package/dist/webcomponents/{p-b21ncS7l.js → p-CPVN4dXS.js} +1 -1
  526. package/dist/webcomponents/p-CQeex56P.js +1 -0
  527. package/dist/webcomponents/p-CU4XQ3fO.js +1 -0
  528. package/dist/webcomponents/{p-Bb-6bNcq.js → p-C_3N7nqh.js} +1 -1
  529. package/dist/webcomponents/{p-BRLwUSZk.js → p-CaxjN6Uo.js} +1 -1
  530. package/dist/webcomponents/p-CpKvg1ok.js +1 -0
  531. package/dist/webcomponents/p-CrQgyTRz.js +1 -0
  532. package/dist/webcomponents/{p-Bu1jU017.js → p-CxzFvTgf.js} +1 -1
  533. package/dist/webcomponents/{p-DVBbk00Z.js → p-CzPUMw00.js} +1 -1
  534. package/dist/webcomponents/{p-DDUmOl3v.js → p-D--yCspA.js} +1 -1
  535. package/dist/webcomponents/{p-qWQmu-fb.js → p-D-JYHdJ7.js} +1 -1
  536. package/dist/webcomponents/p-D6XirF21.js +1 -0
  537. package/dist/webcomponents/p-DCIW8z1f.js +1 -0
  538. package/dist/webcomponents/{p-BfM6X7lF.js → p-DCMrHeJI.js} +1 -1
  539. package/dist/webcomponents/{p-B_6n1dAh.js → p-D_5McRD_.js} +1 -1
  540. package/dist/webcomponents/p-DbX0g1WF.js +1 -0
  541. package/dist/webcomponents/p-De8UloOS.js +1 -0
  542. package/dist/webcomponents/p-DsAwPf2y.js +1 -0
  543. package/dist/webcomponents/p-DvZcI6pC.js +1 -0
  544. package/dist/webcomponents/p-DyDHaG6n.js +1 -0
  545. package/dist/webcomponents/{p-D2_iJUrZ.js → p-DyOgQlh2.js} +1 -1
  546. package/dist/webcomponents/p-IG_KR8zP.js +1 -0
  547. package/dist/webcomponents/p-Xv8DuU3Y.js +1 -0
  548. package/dist/webcomponents/{p-d46dbb83.entry.js → p-a71a5e64.entry.js} +1 -1
  549. package/dist/webcomponents/p-a7e40e91.entry.js +1 -0
  550. package/dist/webcomponents/{p-72dda22b.entry.js → p-a90b8b93.entry.js} +1 -1
  551. package/dist/webcomponents/{p-70f51444.entry.js → p-a928c6fb.entry.js} +1 -1
  552. package/dist/webcomponents/p-b90999af.entry.js +1 -0
  553. package/dist/webcomponents/{p-4178bdbe.entry.js → p-bc3cdc7b.entry.js} +1 -1
  554. package/dist/webcomponents/p-c16c0cbc.entry.js +1 -0
  555. package/dist/webcomponents/p-c262d10f.entry.js +1 -0
  556. package/dist/webcomponents/p-c4Mh3ZZ_.js +1 -0
  557. package/dist/webcomponents/p-c70e1aac.entry.js +1 -0
  558. package/dist/webcomponents/{p-f680e617.entry.js → p-cecb65c4.entry.js} +1 -1
  559. package/dist/webcomponents/p-d7555ff1.entry.js +1 -0
  560. package/dist/webcomponents/{p-8ff839a4.entry.js → p-df329742.entry.js} +1 -1
  561. package/dist/webcomponents/{p-3e667b07.entry.js → p-e2a38ad0.entry.js} +1 -1
  562. package/dist/webcomponents/p-e6516014.entry.js +1 -0
  563. package/dist/webcomponents/{p-97c0dde4.entry.js → p-e6e96be2.entry.js} +1 -1
  564. package/dist/webcomponents/p-e79338f9.entry.js +1 -0
  565. package/dist/webcomponents/p-ea2a9a81.entry.js +1 -0
  566. package/dist/webcomponents/p-f5c3f489.entry.js +1 -0
  567. package/dist/webcomponents/p-f6fbd43d.entry.js +1 -0
  568. package/dist/webcomponents/{p-36a71a36.entry.js → p-f7690165.entry.js} +1 -1
  569. package/dist/webcomponents/{p-7cf87637.entry.js → p-f8cbcbe9.entry.js} +1 -1
  570. package/dist/webcomponents/p-f99e4566.entry.js +1 -0
  571. package/dist/webcomponents/{p-C5id7s_l.js → p-fUtq2xDs.js} +1 -1
  572. package/dist/webcomponents/{p-Dgflaz6J.js → p-oGKW57R8.js} +1 -1
  573. package/dist/webcomponents/p-qipqIMyC.js +2 -0
  574. package/dist/webcomponents/p-xY5RkFuA.js +1 -0
  575. package/dist/webcomponents/webcomponents.esm.js +1 -1
  576. package/package.json +2 -2
  577. package/dist/cjs/spinner-jmeA44Ee.js +0 -12
  578. package/dist/cjs/terminals-list-params-state-Cewmin_p.js +0 -22
  579. package/dist/cjs/utils-Bzyj4qWe.js +0 -29
  580. package/dist/esm/spinner-DUzyWLhj.js +0 -10
  581. package/dist/esm/terminals-list-params-state-D8tzsGR_.js +0 -16
  582. package/dist/esm/utils-Dg6gMUTv.js +0 -22
  583. package/dist/webcomponents/p-040e8524.entry.js +0 -1
  584. package/dist/webcomponents/p-0db9943e.entry.js +0 -1
  585. package/dist/webcomponents/p-1288fda5.entry.js +0 -1
  586. package/dist/webcomponents/p-14ff3155.entry.js +0 -1
  587. package/dist/webcomponents/p-2f01dfd2.entry.js +0 -1
  588. package/dist/webcomponents/p-3aecd2cd.entry.js +0 -1
  589. package/dist/webcomponents/p-3bf63d1e.entry.js +0 -1
  590. package/dist/webcomponents/p-41e17edd.entry.js +0 -1
  591. package/dist/webcomponents/p-48e87a26.entry.js +0 -1
  592. package/dist/webcomponents/p-5580e6ca.entry.js +0 -1
  593. package/dist/webcomponents/p-57dde36e.entry.js +0 -1
  594. package/dist/webcomponents/p-5bc6f5ca.entry.js +0 -1
  595. package/dist/webcomponents/p-5f87add5.entry.js +0 -1
  596. package/dist/webcomponents/p-60206d9c.entry.js +0 -1
  597. package/dist/webcomponents/p-6c9732b6.entry.js +0 -1
  598. package/dist/webcomponents/p-7089fb85.entry.js +0 -1
  599. package/dist/webcomponents/p-7500c5b7.entry.js +0 -1
  600. package/dist/webcomponents/p-79da5350.entry.js +0 -1
  601. package/dist/webcomponents/p-87884ca5.entry.js +0 -1
  602. package/dist/webcomponents/p-88905a54.entry.js +0 -1
  603. package/dist/webcomponents/p-8990707a.entry.js +0 -1
  604. package/dist/webcomponents/p-8b7cbdbf.entry.js +0 -1
  605. package/dist/webcomponents/p-8cca8903.entry.js +0 -1
  606. package/dist/webcomponents/p-8dc4eb6a.entry.js +0 -1
  607. package/dist/webcomponents/p-98cffba9.entry.js +0 -1
  608. package/dist/webcomponents/p-9df86b97.entry.js +0 -1
  609. package/dist/webcomponents/p-9edfd38c.entry.js +0 -1
  610. package/dist/webcomponents/p-9f5c9e41.entry.js +0 -1
  611. package/dist/webcomponents/p-B5Rc83j1.js +0 -1
  612. package/dist/webcomponents/p-BEPUC3Po.js +0 -1
  613. package/dist/webcomponents/p-BP7op0vq.js +0 -1
  614. package/dist/webcomponents/p-BQ2TIFoY.js +0 -1
  615. package/dist/webcomponents/p-BSt6p1oq.js +0 -1
  616. package/dist/webcomponents/p-BY1mRAvj.js +0 -1
  617. package/dist/webcomponents/p-BbZwa5UI.js +0 -1
  618. package/dist/webcomponents/p-BiWRKUx3.js +0 -1
  619. package/dist/webcomponents/p-Bn7inNWG.js +0 -2
  620. package/dist/webcomponents/p-C6c6Q0E7.js +0 -1
  621. package/dist/webcomponents/p-CaAVuW6B.js +0 -1
  622. package/dist/webcomponents/p-CpaS1Lex.js +0 -1
  623. package/dist/webcomponents/p-DD0Mvpeu.js +0 -1
  624. package/dist/webcomponents/p-DIDloHpm.js +0 -1
  625. package/dist/webcomponents/p-Dc1CS9Mi.js +0 -1
  626. package/dist/webcomponents/p-DsZZxRXY.js +0 -1
  627. package/dist/webcomponents/p-a1d3bb81.entry.js +0 -1
  628. package/dist/webcomponents/p-a9957ca5.entry.js +0 -1
  629. package/dist/webcomponents/p-abbf14b5.entry.js +0 -1
  630. package/dist/webcomponents/p-b2dcef65.entry.js +0 -1
  631. package/dist/webcomponents/p-c44325f8.entry.js +0 -1
  632. package/dist/webcomponents/p-c874ca2b.entry.js +0 -1
  633. package/dist/webcomponents/p-caac63bf.entry.js +0 -1
  634. package/dist/webcomponents/p-d72e8541.entry.js +0 -1
  635. package/dist/webcomponents/p-da44dc6e.entry.js +0 -1
  636. package/dist/webcomponents/p-e0cb5de5.entry.js +0 -1
  637. package/dist/webcomponents/p-eP3fmhta.js +0 -1
  638. package/dist/webcomponents/p-ecce97b3.entry.js +0 -1
  639. package/dist/webcomponents/p-fd4ffaa2.entry.js +0 -1
  640. package/dist/webcomponents/p-sw5RO19U.js +0 -1
@@ -1,26 +1,27 @@
1
- import { r as registerInstance, h, c as createEvent, H as Host, g as getElement } from './index-Bn7inNWG.js';
1
+ import { r as registerInstance, h, c as createEvent, H as Host, g as getElement } from './index-qipqIMyC.js';
2
2
  import { z as text, r as radioListItem } from './parts-RvUQ__Pq.js';
3
- import { f as formatCurrency } from './utils-lb8p1Exq.js';
4
- import { c as checkoutStore, P as PAYMENT_METHODS, o as onChange, a as PAYMENT_MODE, b as PAYMENT_METHOD_TYPES } from './checkout.store-UMe84fjY.js';
5
- import { S as StyledHost } from './styled-host-CTAGIN84.js';
3
+ import { f as formatCurrency } from './utils-BscIVFn8.js';
4
+ import { c as checkoutStore, o as onAnyChange, g as getAvailablePaymentMethodTypes, a as onChange } from './checkout.store-DBvS7cVB.js';
5
+ import { S as StyledHost } from './styled-host-CbizlfAU.js';
6
6
  import './event-types-CZfYo5-1.js';
7
- import { H as Header1 } from './header-1-3M9If0gM.js';
8
- import { H as Header2, b as insuranceValuesOn, h as hasInsuranceValueChanged, i as insuranceValues } from './insurance-state-CTalqbNa.js';
9
- import { H as Header3 } from './header-3-CWa41YWq.js';
10
- import { J as JustifiAnalytics, c as checkPkgVersion } from './check-pkg-version-CGQdCjwh.js';
11
- import './config-state-DZeVYerv.js';
7
+ import { H as Header1 } from './header-1-zXsamUS3.js';
8
+ import { H as Header2, b as insuranceValuesOn, h as hasInsuranceValueChanged, i as insuranceValues } from './insurance-state-Dh9f36Qh.js';
9
+ import { H as Header3 } from './header-3-DVtaUAlf.js';
10
+ import { J as JustifiAnalytics, c as checkPkgVersion } from './check-pkg-version-BUkwdVdm.js';
11
+ import './config-state-Blo0ywwc.js';
12
12
  import './dinero-HXpYMWUU.js';
13
13
  import { C as ComponentErrorSeverity, a as ComponentErrorCodes, b as ComponentErrorMessages } from './ComponentError-Cjcsf8ku.js';
14
- import { I as ICheckoutStatus } from './Refund-kKW8S1h6.js';
14
+ import { I as ICheckoutStatus } from './Refund-Bc5By0lb.js';
15
15
  import './Pagination-CLHwhyvu.js';
16
16
  import './Business-BCoP0TAV.js';
17
17
  import './Dispute-BH0Xfn-F.js';
18
18
  import { g as getErrorCode, a as getErrorMessage } from './utils-BeQLScSm.js';
19
- import { C as CheckoutService } from './checkout.service-KDp7tISm.js';
20
- import { A as Api } from './Api-C1I68Tfr.js';
19
+ import { C as CheckoutService } from './checkout.service-BCkQ9pOA.js';
20
+ import { A as Api } from './Api-D4tj-h4P.js';
21
+ import { P as PAYMENT_METHODS, a as PaymentMethod, b as PAYMENT_MODE } from './index-DCIW8z1f.js';
21
22
  import { C as CardBrandLabels } from './payment-method-option-utils-lUHAQVFl.js';
22
- import './index-B_KxSZIF.js';
23
- import './package-BiWRKUx3.js';
23
+ import './index-ZfXl6Xrm.js';
24
+ import './package-BBpkkt2-.js';
24
25
  import './helpers-Mu7LQT-w.js';
25
26
  import './state-options-BX8GieXu.js';
26
27
 
@@ -29,7 +30,7 @@ const Summary = class {
29
30
  registerInstance(this, hostRef);
30
31
  }
31
32
  render() {
32
- return (h(StyledHost, { key: 'db0b903a05629cd6197bb14336fd91881373cbf1' }, h("section", { key: '2e1213c4be75677a98fdf98de077201ebff1d3a6' }, h("div", { key: '26c3bfc8672511dd5af823426e69b6c0d28dd274' }, h("div", { key: '8c9a282d63903b66cf3f93e316bd56f245b9bc1f', part: text }, checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.paymentDescription), h("div", { key: '0729b8adef6ae7bb7a536ad4b5443ed24608ce56' }, h("span", { key: '863ee5dc8a0c662a8074a69d388081ec9fc3fb89', part: text }, "Total"), "\u00A0", h("span", { key: '05bf10634b2a166c6b5720beaf0ab76accb8befe', part: text }, formatCurrency(+(checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.totalAmount))))))));
33
+ return (h(StyledHost, { key: '3161e6f6a196c79d684574cafbc90bcf741b2150' }, h("section", { key: '594b4485ed4fd9d7c1ee7f4556f071139f92ef0c' }, h("div", { key: '5c2d14677dda6fc7ddcb074d4887b839385dca3a' }, h("div", { key: 'fb850cd7e9c11741349710696dd4e6241c98e805', part: text }, checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.paymentDescription), h("div", { key: '959014d7fa2a9c97bae0c986313a604930c1e0f3' }, h("span", { key: '14ab0932a083568419b1c36c95f9072c73962b11', part: text }, "Total"), "\u00A0", h("span", { key: '08a9e00332253070ae984b77eb2a9bab88eb3472', part: text }, formatCurrency(+(checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.totalAmount))))))));
33
34
  }
34
35
  };
35
36
 
@@ -45,7 +46,7 @@ const Header = class {
45
46
  }
46
47
  render() {
47
48
  const HeaderComponent = this.levels[this.level];
48
- return (h(StyledHost, { key: '002dfd5dd8fa47304d9e468e28bdbeb56723913b' }, h(HeaderComponent, { key: '63110d45f87268510cc309d8081f191ef8d4cd8b', text: this.text, class: this.class })));
49
+ return (h(StyledHost, { key: 'eb3651b698897193d34a6c6456cd57dd0bd0bc43' }, h(HeaderComponent, { key: '39caee687f93d3d4d90e62d9fbcae318eaa8022e', text: this.text, class: this.class })));
49
50
  }
50
51
  };
51
52
 
@@ -104,18 +105,38 @@ const makeCheckoutComplete = ({ authToken, checkoutId, service }) => async ({ pa
104
105
  }
105
106
  };
106
107
 
108
+ const api = Api();
109
+ class PlaidService {
110
+ async getLinkToken(authToken, accountId, checkoutId, signal) {
111
+ const endpoint = `plaid/${accountId}/link`;
112
+ const body = { checkout_id: checkoutId };
113
+ return api.post({ endpoint, body, authToken, signal });
114
+ }
115
+ async tokenizeBankAccount(authToken, accountId, publicToken, linkTokenId, paymentMethodGroupId, signal) {
116
+ const endpoint = `plaid/${accountId}/tokenize`;
117
+ const body = { public_token: publicToken };
118
+ if (linkTokenId) {
119
+ body.link_token_id = linkTokenId;
120
+ }
121
+ if (paymentMethodGroupId) {
122
+ body.payment_method_group_id = paymentMethodGroupId;
123
+ }
124
+ return api.post({ endpoint, body, authToken, signal });
125
+ }
126
+ }
127
+
107
128
  const ModularCheckout = class {
108
129
  constructor(hostRef) {
109
130
  registerInstance(this, hostRef);
110
131
  this.errorEvent = createEvent(this, "error-event");
111
132
  this.submitEvent = createEvent(this, "submit-event");
112
- this.paymentMethodChangedEvent = createEvent(this, "payment-method-changed");
113
- this.savePaymentMethod = false;
133
+ this.checkoutChangedEvent = createEvent(this, "checkout-changed");
134
+ this.plaidService = new PlaidService();
114
135
  this.handleApplePayCompleted = (event) => {
115
136
  const { success, token, paymentMethodId, error } = event.detail;
116
137
  if (success && token) {
117
138
  checkoutStore.paymentToken = paymentMethodId;
118
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.APPLE_PAY;
139
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.APPLE_PAY };
119
140
  this.submitCheckout();
120
141
  }
121
142
  else {
@@ -128,11 +149,12 @@ const ModularCheckout = class {
128
149
  }
129
150
  };
130
151
  this.handleApplePayError = (event) => {
131
- const { error } = event.detail;
152
+ const { error, code } = event.detail;
132
153
  console.error("Apple Pay error:", error);
133
154
  this.errorEvent.emit({
134
155
  message: error || "Apple Pay error occurred",
135
- errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
156
+ // prefix with APPLE_PAY_
157
+ errorCode: `APPLE_PAY_${code}`,
136
158
  severity: ComponentErrorSeverity.ERROR,
137
159
  });
138
160
  };
@@ -141,9 +163,6 @@ const ModularCheckout = class {
141
163
  checkoutStore.selectedPaymentMethod = undefined;
142
164
  };
143
165
  }
144
- savePaymentMethodChanged(newValue) {
145
- checkoutStore.savePaymentMethod = newValue;
146
- }
147
166
  connectedCallback() {
148
167
  this.observer = new MutationObserver(() => {
149
168
  this.queryFormRefs();
@@ -161,15 +180,15 @@ const ModularCheckout = class {
161
180
  };
162
181
  this.getCheckout = makeGetCheckout(config);
163
182
  this.completeCheckout = makeCheckoutComplete(config);
164
- onChange("selectedPaymentMethod", (newValue) => {
165
- this.paymentMethodChangedEvent.emit(newValue);
183
+ // Emit checkout-changed whenever any store key changes
184
+ onAnyChange(() => {
185
+ this.emitCheckoutChanged();
166
186
  });
167
187
  }
168
188
  componentWillLoad() {
169
189
  this.analytics = new JustifiAnalytics(this);
170
190
  checkPkgVersion();
171
191
  checkoutStore.authToken = this.authToken;
172
- checkoutStore.savePaymentMethod = this.savePaymentMethod;
173
192
  this.fetchCheckout();
174
193
  // Refresh the checkout data when insurance values actually change (not on initial load)
175
194
  insuranceValuesOn("set", (key) => {
@@ -200,6 +219,7 @@ const ModularCheckout = class {
200
219
  if (this.getCheckout) {
201
220
  this.getCheckout({
202
221
  onSuccess: ({ checkout }) => {
222
+ this.updateStore(checkout);
203
223
  if (checkout.status === ICheckoutStatus.completed) {
204
224
  this.errorEvent.emit({
205
225
  message: ComponentErrorMessages.CHECKOUT_ALREADY_COMPLETED,
@@ -216,13 +236,12 @@ const ModularCheckout = class {
216
236
  });
217
237
  return;
218
238
  }
219
- this.updateStore(checkout);
220
239
  },
221
240
  onError: (error) => {
222
241
  this.errorEvent.emit({
223
242
  message: error.message,
224
- errorCode: ComponentErrorCodes.FETCH_ERROR,
225
- severity: ComponentErrorSeverity.ERROR,
243
+ errorCode: error.code,
244
+ severity: error.severity,
226
245
  });
227
246
  },
228
247
  });
@@ -231,7 +250,8 @@ const ModularCheckout = class {
231
250
  updateStore(checkout) {
232
251
  var _a, _b, _c, _d, _e;
233
252
  checkoutStore.accountId = checkout.account_id;
234
- checkoutStore.paymentMethods = checkout.payment_methods;
253
+ checkoutStore.checkoutLoaded = true;
254
+ checkoutStore.paymentMethods = checkout.payment_methods.map((paymentMethod) => new PaymentMethod(paymentMethod));
235
255
  checkoutStore.paymentMethodGroupId = checkout.payment_method_group_id;
236
256
  checkoutStore.paymentDescription = checkout.payment_description;
237
257
  checkoutStore.totalAmount = checkout.total_amount;
@@ -245,6 +265,14 @@ const ModularCheckout = class {
245
265
  checkoutStore.bnplProviderCheckoutUrl =
246
266
  (_e = checkout === null || checkout === void 0 ? void 0 : checkout.bnpl) === null || _e === void 0 ? void 0 : _e.provider_checkout_url;
247
267
  }
268
+ emitCheckoutChanged() {
269
+ const detail = {
270
+ availablePaymentMethodTypes: getAvailablePaymentMethodTypes(),
271
+ selectedPaymentMethod: checkoutStore.selectedPaymentMethod,
272
+ savedPaymentMethods: checkoutStore.paymentMethods,
273
+ };
274
+ this.checkoutChangedEvent.emit(detail);
275
+ }
248
276
  queryFormRefs() {
249
277
  this.billingFormRef = this.hostEl.querySelector("justifi-billing-form, justifi-bank-account-billing-form-simple, justifi-card-billing-form-simple, justifi-billing-form-full");
250
278
  this.applePayRef = this.hostEl.querySelector("justifi-apple-pay");
@@ -289,16 +317,19 @@ const ModularCheckout = class {
289
317
  // set the selected payment method to the checkout store from outside the component
290
318
  async setSelectedPaymentMethod(paymentMethod) {
291
319
  checkoutStore.selectedPaymentMethod = paymentMethod;
320
+ checkoutStore.paymentToken = paymentMethod.id || undefined;
292
321
  }
293
322
  // if validation fails, the error will be emitted by the component
294
323
  async validate() {
324
+ var _a, _b;
295
325
  const promises = [];
296
326
  if (checkoutStore.insuranceEnabled && this.insuranceFormRef) {
297
327
  promises.push(this.insuranceFormRef.validate());
298
328
  }
329
+ const isNewCard = ((_a = checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.NEW_CARD;
330
+ const isNewBankAccount = ((_b = checkoutStore.selectedPaymentMethod) === null || _b === void 0 ? void 0 : _b.type) === PAYMENT_METHODS.NEW_BANK_ACCOUNT;
299
331
  // For new card/bank account, validate payment method + billing.
300
- if (checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.NEW_CARD ||
301
- checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.NEW_BANK_ACCOUNT) {
332
+ if (isNewCard || isNewBankAccount) {
302
333
  if (this.paymentMethodFormRef)
303
334
  promises.push(this.paymentMethodFormRef.validate());
304
335
  if (this.billingFormRef)
@@ -322,17 +353,21 @@ const ModularCheckout = class {
322
353
  }
323
354
  return true;
324
355
  }
325
- catch (_a) {
356
+ catch (_c) {
326
357
  // If any validator throws/rejects, consider the whole validation failed.
327
358
  return false;
328
359
  }
329
360
  }
330
361
  async submitCheckout(submitCheckoutArgs) {
362
+ var _a, _b, _c, _d;
331
363
  const isValid = await this.validate();
332
- const shouldTokenize = checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.NEW_CARD || checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.NEW_BANK_ACCOUNT;
364
+ const isNewCard = ((_a = checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.NEW_CARD;
365
+ const isNewBankAccount = ((_b = checkoutStore.selectedPaymentMethod) === null || _b === void 0 ? void 0 : _b.type) === PAYMENT_METHODS.NEW_BANK_ACCOUNT;
366
+ const isPlaid = checkoutStore.selectedPaymentMethod.type === PAYMENT_METHODS.PLAID;
367
+ const shouldTokenize = isNewCard || isNewBankAccount;
333
368
  if (shouldTokenize) {
334
369
  const tokenizeResult = await this.tokenizePaymentMethod(submitCheckoutArgs);
335
- if (tokenizeResult.error) {
370
+ if (tokenizeResult === null || tokenizeResult === void 0 ? void 0 : tokenizeResult.error) {
336
371
  this.errorEvent.emit({
337
372
  message: tokenizeResult.error.message,
338
373
  errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
@@ -341,6 +376,41 @@ const ModularCheckout = class {
341
376
  return;
342
377
  }
343
378
  }
379
+ // For Plaid, perform exchange at submit time using stored public token and link token id
380
+ if (isPlaid && !checkoutStore.paymentToken) {
381
+ const publicToken = checkoutStore.plaidPublicToken;
382
+ const linkTokenId = checkoutStore.plaidLinkTokenId;
383
+ if (!publicToken) {
384
+ this.errorEvent.emit({
385
+ message: 'Missing Plaid public token. Please connect your bank.',
386
+ errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
387
+ severity: ComponentErrorSeverity.ERROR,
388
+ });
389
+ return;
390
+ }
391
+ try {
392
+ const response = await this.plaidService.tokenizeBankAccount(checkoutStore.authToken, checkoutStore.accountId, publicToken, linkTokenId || undefined, checkoutStore.savePaymentMethod ? checkoutStore.paymentMethodGroupId : undefined);
393
+ if (response === null || response === void 0 ? void 0 : response.error) {
394
+ this.errorEvent.emit({
395
+ message: typeof response.error === 'string' ? response.error : response.error.message || 'Failed to tokenize bank account',
396
+ errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
397
+ severity: ComponentErrorSeverity.ERROR,
398
+ });
399
+ return;
400
+ }
401
+ const paymentMethod = response === null || response === void 0 ? void 0 : response.data;
402
+ const token = ((_c = paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.bank_account) === null || _c === void 0 ? void 0 : _c.token) || (paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.token) || (paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.id);
403
+ checkoutStore.paymentToken = token;
404
+ }
405
+ catch (err) {
406
+ this.errorEvent.emit({
407
+ message: (err === null || err === void 0 ? void 0 : err.message) || 'Plaid exchange error',
408
+ errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
409
+ severity: ComponentErrorSeverity.ERROR,
410
+ });
411
+ return;
412
+ }
413
+ }
344
414
  if (!isValid) {
345
415
  this.errorEvent.emit({
346
416
  message: "Please fill in all required fields.",
@@ -355,19 +425,27 @@ const ModularCheckout = class {
355
425
  errorCode: ComponentErrorCodes.TOKENIZE_ERROR,
356
426
  severity: ComponentErrorSeverity.ERROR,
357
427
  });
428
+ return;
358
429
  }
359
430
  let payment;
360
- const MAP_PAYMENT_METHOD_TO_PAYMENT_MODE = {
361
- [PAYMENT_METHODS.NEW_CARD]: PAYMENT_MODE.ECOM,
362
- [PAYMENT_METHODS.NEW_BANK_ACCOUNT]: PAYMENT_MODE.ECOM,
363
- [PAYMENT_METHODS.SAVED_BANK_ACCOUNT]: PAYMENT_MODE.ECOM,
364
- [PAYMENT_METHODS.SAVED_CARD]: PAYMENT_MODE.ECOM,
365
- [PAYMENT_METHODS.SEZZLE]: PAYMENT_MODE.BNPL,
366
- [PAYMENT_METHODS.PLAID]: PAYMENT_MODE.ECOM,
367
- [PAYMENT_METHODS.APPLE_PAY]: PAYMENT_MODE.APPLE_PAY,
431
+ const mapTypeToPaymentMode = (type) => {
432
+ switch (type) {
433
+ case PAYMENT_METHODS.NEW_CARD:
434
+ case PAYMENT_METHODS.SAVED_CARD:
435
+ case PAYMENT_METHODS.NEW_BANK_ACCOUNT:
436
+ case PAYMENT_METHODS.SAVED_BANK_ACCOUNT:
437
+ case PAYMENT_METHODS.PLAID:
438
+ return PAYMENT_MODE.ECOM;
439
+ case PAYMENT_METHODS.SEZZLE:
440
+ return PAYMENT_MODE.BNPL;
441
+ case PAYMENT_METHODS.APPLE_PAY:
442
+ return PAYMENT_MODE.APPLE_PAY;
443
+ default:
444
+ return undefined;
445
+ }
368
446
  };
369
447
  payment = {
370
- payment_mode: MAP_PAYMENT_METHOD_TO_PAYMENT_MODE[checkoutStore.selectedPaymentMethod],
448
+ payment_mode: mapTypeToPaymentMode((_d = checkoutStore.selectedPaymentMethod) === null || _d === void 0 ? void 0 : _d.type),
371
449
  payment_token: checkoutStore.paymentToken,
372
450
  };
373
451
  this.completeCheckout({
@@ -388,36 +466,13 @@ const ModularCheckout = class {
388
466
  });
389
467
  }
390
468
  render() {
391
- return h(Host, { key: 'fcff4ca415a65b77b730328379dc8df9aacba648' });
469
+ return h(Host, { key: 'f13bda646a7cfcbe339baad474554b38fb0ebae5' });
392
470
  }
393
471
  get hostEl() { return getElement(this); }
394
- static get watchers() { return {
395
- "savePaymentMethod": ["savePaymentMethodChanged"]
396
- }; }
397
472
  };
398
473
 
399
474
  const plaidIconSvg = 'data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQ4IiB2aWV3Qm94PSIwIDAgMjggMjkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgY2xhc3M9ImNzcy0xcmRhajhtIj48ZyBmaWxsPSIjMTExIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yNS43NjI5IDI2LjI2MjhMMjggMTcuNTMwOUwyNC45NjkxIDE0LjUwMDFMMjcuOTk5OSAxMS40NjkxTDI1Ljc2MjggMi43MzcwNkwxNy4wMzA5IDAuNUwxNC4wMDAxIDMuNTMxTDEwLjk2OSAwLjUwMDE0TDIuMjM3MDYgMi43MzczNEwwIDExLjQ2OTFMMy4wMzEyOCAxNC40OTk5TDAuMDAwMTQgMTcuNTMxTDIuMjM3MiAyNi4yNjI5TDEwLjk2OTEgMjguNUwxNC4wMDAxIDI1LjQ2OUwxNy4wMzEgMjguNDk5OUwyNS43NjI5IDI2LjI2MjhaTTE1LjczMjEgMjMuNzM3MUwxOC42MTg2IDIwLjg1MDVMMjIuMjkxMiAyNC41MjMzTDE3LjY5NTYgMjUuNzAwN0wxNS43MzIxIDIzLjczNzFaTTExLjExMzYgOS44ODE1NEwxNC4wMDAzIDYuOTk1MDJMMTYuODg2OCA5Ljg4MTRMMTQuMDAwMSAxMi43Njc5TDExLjExMzYgOS44ODE1NFpNMTIuMjY4MiAxNC41TDkuMzgxNTQgMTcuMzg2NUw2LjQ5NTAyIDE0LjVMOS4zODE1NCAxMS42MTM1TDEyLjI2ODIgMTQuNVpNMTguNjE4NyAxMS42MTMzTDIxLjUwNTMgMTQuNUwxOC42MTg2IDE3LjM4NjVMMTUuNzMyMSAxNC41TDE4LjYxODcgMTEuNjEzM1pNMTYuODg2NyAxOS4xMTg2TDE0LjAwMDEgMjIuMDA1MUwxMS4xMTM1IDE5LjExODVMMTQuMDAwMSAxNi4yMzE5TDE2Ljg4NjcgMTkuMTE4NlpNMTAuMzA0NCAyNS43MDA3TDUuNzA4NjQgMjQuNTIzM0w5LjM4MTU0IDIwLjg1MDRMMTIuMjY4MiAyMy43MzcxTDEwLjMwNDQgMjUuNzAwN1pNNC43NjMwOCAxNi4yMzE5TDcuNjQ5NiAxOS4xMTg1TDMuOTc2NyAyMi43OTE0TDIuNzk5MyAxOC4xOTU3TDQuNzYzMDggMTYuMjMxOVpNMy45NzY3IDYuMjA4MzZMNy42NDk3NCA5Ljg4MTRMNC43NjMwOCAxMi43NjgxTDIuNzk5MyAxMC44MDQxTDMuOTc2NyA2LjIwODM2Wk0xMi4yNjgzIDUuMjYyOTRMOS4zODE2OCA4LjE0OTZMNS43MDg5MiA0LjQ3NjdMMTAuMzA0NyAzLjI5OTNMMTIuMjY4MyA1LjI2Mjk0Wk0xNy42OTU5IDMuMjk5M0wyMi4yOTE1IDQuNDc2N0wxOC42MTg2IDguMTQ5NDZMMTUuNzMyMSA1LjI2Mjk0TDE3LjY5NTkgMy4yOTkzWk0yMy4yMzcyIDEyLjc2ODFMMjAuMzUwNSA5Ljg4MTRMMjQuMDIzMyA2LjIwODc4TDI1LjIwMDcgMTAuODA0NkwyMy4yMzcyIDEyLjc2ODFaTTI0LjAyMzMgMjIuNzkxNEwyMC4zNTA1IDE5LjExODZMMjMuMjM3MiAxNi4yMzIxTDI1LjIwMDcgMTguMTk1N0wyNC4wMjMzIDIyLjc5MTRaIj48L3BhdGg+PC9nPjwvc3ZnPgo=';
400
475
 
401
- const api = Api();
402
- class PlaidService {
403
- async getLinkToken(authToken, accountId, checkoutId, signal) {
404
- const endpoint = `plaid/${accountId}/link`;
405
- const body = { checkout_id: checkoutId };
406
- return api.post({ endpoint, body, authToken, signal });
407
- }
408
- async tokenizeBankAccount(authToken, accountId, publicToken, linkTokenId, paymentMethodGroupId, signal) {
409
- const endpoint = `plaid/${accountId}/tokenize`;
410
- const body = { public_token: publicToken };
411
- if (linkTokenId) {
412
- body.link_token_id = linkTokenId;
413
- }
414
- if (paymentMethodGroupId) {
415
- body.payment_method_group_id = paymentMethodGroupId;
416
- }
417
- return api.post({ endpoint, body, authToken, signal });
418
- }
419
- }
420
-
421
476
  // Plaid-specific error codes
422
477
  var PlaidErrorCodes;
423
478
  (function (PlaidErrorCodes) {
@@ -500,25 +555,6 @@ const PlaidPaymentMethod = class {
500
555
  }, 100);
501
556
  }
502
557
  };
503
- this.onPaymentMethodOptionClick = (e) => {
504
- e.preventDefault();
505
- // Update local selection state
506
- this.isSelected = true;
507
- // Update store selection
508
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.PLAID;
509
- // Emit selection event
510
- this.paymentMethodOptionSelected.emit(PAYMENT_METHODS.PLAID);
511
- // If there's an error, clear it and try to initialize again
512
- if (this.error) {
513
- this.clearError();
514
- this.waitForStoreAndInitialize();
515
- return;
516
- }
517
- // If Plaid Link is ready and no public token exists, open Plaid Link
518
- if (this.plaidLink && !this.publicToken && !this.isAuthenticating) {
519
- this.openPlaidLink();
520
- }
521
- };
522
558
  this.initializePlaidLink = async () => {
523
559
  try {
524
560
  // Check if Plaid is available globally
@@ -601,6 +637,9 @@ const PlaidPaymentMethod = class {
601
637
  this.linkToken = response.data.link_token;
602
638
  // Try to capture link token id if present in envelope
603
639
  this.linkTokenId = (response === null || response === void 0 ? void 0 : response.id) || ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.id) || null;
640
+ if (this.linkTokenId) {
641
+ checkoutStore.plaidLinkTokenId = this.linkTokenId;
642
+ }
604
643
  }
605
644
  catch (error) {
606
645
  // Clear timeout
@@ -672,7 +711,7 @@ const PlaidPaymentMethod = class {
672
711
  // Ensure the component remains selected after successful authentication
673
712
  if (!this.isSelected) {
674
713
  this.isSelected = true;
675
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.PLAID;
714
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.PLAID };
676
715
  }
677
716
  // Emit success event for parent components
678
717
  this.plaidErrorRecovered.emit({
@@ -680,41 +719,10 @@ const PlaidPaymentMethod = class {
680
719
  message: 'Bank account connected successfully',
681
720
  severity: ComponentErrorSeverity.INFO
682
721
  });
683
- // Immediately exchange the public token for a payment method token via backend
684
- this.exchangePublicTokenForPaymentMethod();
685
- };
686
- this.exchangePublicTokenForPaymentMethod = async () => {
687
- var _a;
688
- if (!this.publicToken) {
689
- console.error('[PlaidPaymentMethod] exchange: missing publicToken');
690
- return;
691
- }
692
- if (!checkoutStore.authToken || !checkoutStore.accountId) {
693
- console.error('[PlaidPaymentMethod] exchange: missing auth/account context');
694
- return;
695
- }
696
- try {
697
- const response = await this.plaidService.tokenizeBankAccount(checkoutStore.authToken, checkoutStore.accountId, this.publicToken, this.linkTokenId || undefined, checkoutStore.savePaymentMethod ? checkoutStore.paymentMethodGroupId : undefined);
698
- if (response === null || response === void 0 ? void 0 : response.error) {
699
- console.error('[PlaidPaymentMethod] exchange: backend error', response.error);
700
- return;
701
- }
702
- // Extract token from payment method response
703
- const paymentMethod = response === null || response === void 0 ? void 0 : response.data;
704
- const token = ((_a = paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.bank_account) === null || _a === void 0 ? void 0 : _a.token) || (paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.token) || (paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.id);
705
- if (!token) {
706
- console.error('[PlaidPaymentMethod] exchange: no token in response');
707
- return;
708
- }
709
- // Save for downstream submit flows
710
- checkoutStore.paymentToken = token;
711
- }
712
- catch (err) {
713
- console.error('[PlaidPaymentMethod] exchange: exception', {
714
- message: (err === null || err === void 0 ? void 0 : err.message) || String(err),
715
- });
716
- }
722
+ // Store public token in checkout store; exchange will be handled on submit
723
+ checkoutStore.plaidPublicToken = publicToken;
717
724
  };
725
+ // Exchange logic moved to Modular Checkout submit flow.
718
726
  this.handlePlaidExit = (err, _metadata) => {
719
727
  this.isAuthenticating = false;
720
728
  if (err) {
@@ -853,16 +861,26 @@ const PlaidPaymentMethod = class {
853
861
  };
854
862
  // Watch for store changes to sync component state
855
863
  this.syncWithStore = () => {
856
- const shouldBeSelected = checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.PLAID;
864
+ var _a;
865
+ const shouldBeSelected = ((_a = checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.PLAID;
857
866
  if (this.isSelected !== shouldBeSelected) {
858
867
  this.isSelected = shouldBeSelected;
859
868
  }
860
869
  };
861
870
  }
862
871
  onSelectionChange(newValue) {
872
+ var _a;
863
873
  // Ensure store is updated when component selection changes
864
- if (newValue && checkoutStore.selectedPaymentMethod !== PAYMENT_METHODS.PLAID) {
865
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.PLAID;
874
+ if (newValue && ((_a = checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) !== PAYMENT_METHODS.PLAID) {
875
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.PLAID };
876
+ }
877
+ // Auto-start Plaid flow when selected and ready
878
+ if (newValue &&
879
+ this.plaidLink &&
880
+ !this.publicToken &&
881
+ !this.isAuthenticating &&
882
+ !this.error) {
883
+ this.openPlaidLink();
866
884
  }
867
885
  }
868
886
  componentDidRender() {
@@ -884,8 +902,9 @@ const PlaidPaymentMethod = class {
884
902
  };
885
903
  }
886
904
  componentWillLoad() {
905
+ var _a;
887
906
  // Initialize selection state based on store
888
- this.isSelected = checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.PLAID;
907
+ this.isSelected = ((_a = checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.PLAID;
889
908
  }
890
909
  async resolvePaymentMethod() {
891
910
  if (!this.publicToken) {
@@ -902,17 +921,29 @@ const PlaidPaymentMethod = class {
902
921
  // Returns a usable payment method token for checkout completion.
903
922
  // Will perform the backend exchange if the token is not yet present in the store.
904
923
  async getPaymentToken() {
905
- if (checkoutStore.paymentToken) {
906
- return checkoutStore.paymentToken;
907
- }
908
- await this.exchangePublicTokenForPaymentMethod();
909
924
  return checkoutStore.paymentToken;
910
925
  }
926
+ async handleSelectionClick() {
927
+ // Update local selection state
928
+ this.isSelected = true;
929
+ // Update store selection
930
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.PLAID };
931
+ // If there's an error, clear it and try to initialize again
932
+ if (this.error) {
933
+ this.clearError();
934
+ this.waitForStoreAndInitialize();
935
+ return;
936
+ }
937
+ // If Plaid Link is ready and no public token exists, open Plaid Link
938
+ if (this.plaidLink && !this.publicToken && !this.isAuthenticating) {
939
+ this.openPlaidLink();
940
+ }
941
+ }
911
942
  // Method to handle external selection changes (e.g., from other payment methods)
912
943
  async setSelected(selected) {
913
944
  this.isSelected = selected;
914
945
  if (selected) {
915
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.PLAID;
946
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.PLAID };
916
947
  }
917
948
  }
918
949
  // Method to check if component is currently selected
@@ -1019,7 +1050,7 @@ const PlaidPaymentMethod = class {
1019
1050
  }
1020
1051
  return null;
1021
1052
  };
1022
- return (h(StyledHost, { class: "payment-method" }, h("script", { src: "https://cdn.plaid.com/link/v2/stable/link-initialize.js", async: true, ref: (el) => (this.scriptRef = el) }), h("div", { class: "radio-list-item p-3", part: radioListItem, onClick: this.onPaymentMethodOptionClick, title: "Pay with Plaid" }, h("form-control-radio", { name: "paymentMethodType", value: PAYMENT_METHODS.PLAID, checked: this.isSelected, label: h("div", null, h("div", null, "Pay with Bank Account ", plaidLogo, " "), renderErrorState(), renderStatusState()) }))));
1053
+ return (h(StyledHost, { class: "payment-method" }, h("script", { src: "https://cdn.plaid.com/link/v2/stable/link-initialize.js", async: true, ref: (el) => (this.scriptRef = el) }), h("div", { title: "Pay with Plaid" }, h("div", { onClick: (event) => { event.preventDefault(); this.handleSelectionClick(); } }, "Pay with Bank Account ", plaidLogo, " "), renderErrorState(), renderStatusState())));
1023
1054
  }
1024
1055
  static get watchers() { return {
1025
1056
  "isSelected": ["onSelectionChange"]
@@ -1031,18 +1062,16 @@ const SavedPaymentMethods = class {
1031
1062
  registerInstance(this, hostRef);
1032
1063
  this.onPaymentMethodOptionClick = (paymentMethod) => (e) => {
1033
1064
  e.preventDefault();
1034
- const SELECTED_PAYMENT_METHODS = {
1035
- [PAYMENT_METHOD_TYPES.CARD]: PAYMENT_METHODS.SAVED_CARD,
1036
- [PAYMENT_METHOD_TYPES.BANK_ACCOUNT]: PAYMENT_METHODS.SAVED_BANK_ACCOUNT,
1037
- };
1038
- checkoutStore.selectedPaymentMethod = SELECTED_PAYMENT_METHODS[paymentMethod.type];
1065
+ checkoutStore.selectedPaymentMethod = { id: paymentMethod.id, type: paymentMethod.type };
1039
1066
  checkoutStore.paymentToken = paymentMethod.id;
1040
1067
  };
1041
- this.isAllowedPaymentMethod = (paymentMethod) => {
1042
- if (paymentMethod.type === PAYMENT_METHOD_TYPES.CARD && checkoutStore.disableCreditCard) {
1068
+ this.isAllowedPaymentMethod = (paymentMethodType) => {
1069
+ const isCard = paymentMethodType === PAYMENT_METHODS.SAVED_CARD;
1070
+ const isBankAccount = paymentMethodType === PAYMENT_METHODS.SAVED_BANK_ACCOUNT;
1071
+ if (isCard && checkoutStore.disableCreditCard) {
1043
1072
  return false;
1044
1073
  }
1045
- if (paymentMethod.type === PAYMENT_METHOD_TYPES.BANK_ACCOUNT && checkoutStore.disableBankAccount) {
1074
+ if (isBankAccount && checkoutStore.disableBankAccount) {
1046
1075
  return false;
1047
1076
  }
1048
1077
  return true;
@@ -1061,7 +1090,7 @@ const SavedPaymentMethods = class {
1061
1090
  return null;
1062
1091
  }
1063
1092
  return (h(StyledHost, null, h("div", { class: "saved-payment-methods" }, checkoutStore.paymentMethods.length ? checkoutStore.paymentMethods
1064
- .filter(this.isAllowedPaymentMethod)
1093
+ .filter((paymentMethod) => this.isAllowedPaymentMethod(paymentMethod.type))
1065
1094
  .map((paymentMethod) => (h("div", { class: "radio-list-item p-3", part: radioListItem, onClick: this.onPaymentMethodOptionClick(paymentMethod) }, h("form-control-radio", { name: "paymentMethodType", value: paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.id, checked: checkoutStore.paymentToken === (paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.id), label: `${CardBrandLabels[paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.brand] || ''} *${paymentMethod === null || paymentMethod === void 0 ? void 0 : paymentMethod.acct_last_four}` })))) : null)));
1066
1095
  }
1067
1096
  };
@@ -1077,11 +1106,6 @@ const SezzlePaymentMethod = class {
1077
1106
  registerInstance(this, hostRef);
1078
1107
  this.paymentMethodOptionSelected = createEvent(this, "paymentMethodOptionSelected");
1079
1108
  this.paymentMethodOptionId = PAYMENT_METHODS.SEZZLE;
1080
- this.onPaymentMethodOptionClick = (e) => {
1081
- e.preventDefault();
1082
- checkoutStore.selectedPaymentMethod = this.paymentMethodOptionId;
1083
- this.paymentMethodOptionSelected.emit(this.paymentMethodOptionId);
1084
- };
1085
1109
  this.initializeSezzleCheckout = () => {
1086
1110
  let resolveSezzlePromise;
1087
1111
  this.sezzlePromise = new Promise((resolve) => { resolveSezzlePromise = resolve; });
@@ -1124,13 +1148,17 @@ const SezzlePaymentMethod = class {
1124
1148
  this.sezzleButtonRef.click();
1125
1149
  return this.sezzlePromise;
1126
1150
  }
1151
+ async handleSelectionClick() {
1152
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.SEZZLE };
1153
+ this.paymentMethodOptionSelected.emit(this.paymentMethodOptionId);
1154
+ }
1127
1155
  render() {
1128
1156
  var _a, _b;
1129
1157
  if (!checkoutStore.bnplEnabled || checkoutStore.disableBnpl) {
1130
1158
  console.warn('justifi-sezzle-payment-method: BNPL is not enabled for this account.');
1131
1159
  return null;
1132
1160
  }
1133
- return (h(StyledHost, { class: "payment-method" }, h("script", { src: "https://checkout-sdk.sezzle.com/checkout.min.js", async: true, ref: (el) => (this.scriptRef = el) }), h("div", { class: "radio-list-item p-3", part: radioListItem, onClick: this.onPaymentMethodOptionClick }, h("form-control-radio", { name: "paymentMethodType", value: this.paymentMethodOptionId, checked: checkoutStore.selectedPaymentMethod === PAYMENT_METHODS.SEZZLE, label: h("div", null, h("div", null, "Buy now, pay later with ", sezzleLogo), this.installmentPlan && (h("small", null, h("span", null, (_a = this.installmentPlan) === null || _a === void 0 ? void 0 : _a.installments.length), "\u00A0", h("span", null, this.installmentPlan.schedule, " payments of"), "\u00A0", h("span", { class: "fw-bold" }, formatCurrency((_b = this.installmentPlan) === null || _b === void 0 ? void 0 : _b.installments[0].amountInCents))))) }))));
1161
+ return (h(StyledHost, { class: "payment-method" }, h("script", { src: "https://checkout-sdk.sezzle.com/checkout.min.js", async: true, ref: (el) => (this.scriptRef = el) }), h("div", null, h("div", null, "Buy now, pay later with ", sezzleLogo), this.installmentPlan && (h("small", null, h("span", null, (_a = this.installmentPlan) === null || _a === void 0 ? void 0 : _a.installments.length), "\u00A0", h("span", null, this.installmentPlan.schedule, " payments of"), "\u00A0", h("span", { class: "fw-bold" }, formatCurrency((_b = this.installmentPlan) === null || _b === void 0 ? void 0 : _b.installments[0].amountInCents)))))));
1134
1162
  }
1135
1163
  };
1136
1164
 
@@ -1174,7 +1202,7 @@ const TokenizePaymentMethod = class {
1174
1202
  }
1175
1203
  handleRadioClick(event) {
1176
1204
  this.selectedPaymentMethod = event.detail;
1177
- checkoutStore.selectedPaymentMethod = event.detail;
1205
+ checkoutStore.selectedPaymentMethod = { type: event.detail };
1178
1206
  }
1179
1207
  async fillBillingForm(fields) {
1180
1208
  var _a;
@@ -1266,11 +1294,11 @@ const TokenizePaymentMethod = class {
1266
1294
  }
1267
1295
  if (!this.disableCreditCard) {
1268
1296
  this.selectedPaymentMethod = PAYMENT_METHODS.NEW_CARD;
1269
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.NEW_CARD;
1297
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.NEW_CARD };
1270
1298
  }
1271
1299
  else if (!this.disableBankAccount) {
1272
1300
  this.selectedPaymentMethod = PAYMENT_METHODS.NEW_BANK_ACCOUNT;
1273
- checkoutStore.selectedPaymentMethod = PAYMENT_METHODS.NEW_BANK_ACCOUNT;
1301
+ checkoutStore.selectedPaymentMethod = { type: PAYMENT_METHODS.NEW_BANK_ACCOUNT };
1274
1302
  }
1275
1303
  }
1276
1304
  setComputedHideSubmitButton() {
@@ -1369,17 +1397,17 @@ const TokenizePaymentMethod = class {
1369
1397
  return this.disableCreditCard || this.disableBankAccount;
1370
1398
  }
1371
1399
  renderPaymentMethodOption(paymentMethodType) {
1372
- const isSelected = this.selectedPaymentMethod === paymentMethodType;
1400
+ const isSelected = this.selectedPaymentMethod === paymentMethodType && checkoutStore.selectedPaymentMethod.id === undefined;
1373
1401
  return (h("div", { class: "payment-method" }, h("justifi-radio-list-item", { name: "paymentMethodType", value: paymentMethodType, checked: isSelected, label: PAYMENT_METHOD_TYPE_LABELS[paymentMethodType], hidden: this.shouldHideRadioInput }), isSelected && this.renderSelectedPaymentMethodForm(paymentMethodType)));
1374
1402
  }
1375
- renderSelectedPaymentMethodForm(paymentMethodId) {
1376
- return (h("div", { class: "mt-4 pb-4" }, this.renderPaymentMethodForm(paymentMethodId), h("div", { class: "mt-4" }, h("justifi-billing-form", { ref: (el) => (this.billingFormRef = el), hideCardBillingForm: this.hideCardBillingForm, hideBankAccountBillingForm: this.hideBankAccountBillingForm, paymentMethodType: paymentMethodId })), h("div", { class: "mt-4" }, h("justifi-save-new-payment-method", { hidden: !this.paymentMethodGroupID }))));
1403
+ renderSelectedPaymentMethodForm(paymentMethodType) {
1404
+ return (h("div", { class: "mt-4 pb-4" }, this.renderPaymentMethodForm(paymentMethodType), h("div", { class: "mt-4" }, h("justifi-billing-form", { ref: (el) => (this.billingFormRef = el), hideCardBillingForm: this.hideCardBillingForm, hideBankAccountBillingForm: this.hideBankAccountBillingForm, paymentMethodType: paymentMethodType })), h("div", { class: "mt-4" }, h("justifi-save-new-payment-method", { hidden: !this.paymentMethodGroupID, label: this.savePaymentMethodLabel }))));
1377
1405
  }
1378
- renderPaymentMethodForm(paymentMethodId) {
1379
- return paymentMethodId === PAYMENT_METHODS.NEW_CARD ? (h("justifi-card-form", { ref: (el) => (this.paymentMethodFormRef = el) })) : (h("justifi-bank-account-form", { ref: (el) => (this.paymentMethodFormRef = el) }));
1406
+ renderPaymentMethodForm(paymentMethodType) {
1407
+ return paymentMethodType === PAYMENT_METHODS.NEW_CARD ? (h("justifi-card-form", { ref: (el) => (this.paymentMethodFormRef = el) })) : (h("justifi-bank-account-form", { ref: (el) => (this.paymentMethodFormRef = el) }));
1380
1408
  }
1381
1409
  render() {
1382
- return (h(StyledHost, { key: '86f4eb7ae1ee329384e6bde2fdf1d7035a341488' }, h("form", { key: 'e3433176ea56ca9cbf831c9c4a8c2cfb3e41707a' }, h("fieldset", { key: 'c130d134bc8e5642881250586e8099e8eee7090b' }, h("div", { key: '0ff386b78ce610a22ddeed10b29a170259197f10', class: "row gy-3" }, h("div", { key: '020e8750dd774723083a84a4a4dc0637644ccd25', class: "col-12" }, this.availablePaymentMethods.map((method) => this.renderPaymentMethodOption(method))), h("div", { key: 'b3b53bca5369986e892913a87d7f77a463706015', class: "col-12" }, h("justifi-button", { key: '5f7a195926440cf5fba38b4f5781d45b6959ad6d', text: this.submitButtonText, variant: "primary", type: "submit", clickHandler: (e) => this.tokenizePaymentMethod(e), isLoading: this.isLoading, "data-testid": "submit-button", hidden: this.computedHideSubmitButton })))))));
1410
+ return (h(StyledHost, { key: '5fc5dad15215fe24b421f4d6c13355fb849b8a76' }, h("form", { key: '0e0330e5b11ee3ae0bef9e092fa2fb2a0a6af3e7' }, h("fieldset", { key: 'ee4c026ccda62a249e019a9e105e40ea465fc400' }, h("div", { key: '15a8a86fa5be8a545745260d76a8c3b2569d6a0e', class: "row gy-3" }, h("div", { key: 'bbbeed6ee96311394a876b4beb206e8e335184c2', class: "col-12" }, this.availablePaymentMethods.map((method) => this.renderPaymentMethodOption(method))), h("div", { key: 'da2a2009abe4348e25a5fc712557e81e9f6c4c1f', class: "col-12" }, h("justifi-button", { key: '050939c757999383226f281ee0eff1ec178be203', text: this.submitButtonText, variant: "primary", type: "submit", clickHandler: (e) => this.tokenizePaymentMethod(e), isLoading: this.isLoading, "data-testid": "submit-button", hidden: this.computedHideSubmitButton })))))));
1383
1411
  }
1384
1412
  get host() { return getElement(this); }
1385
1413
  static get watchers() { return {