@justifi/webcomponents 5.7.6-rc-07 → 5.7.6

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 (673) hide show
  1. package/dist/cjs/Checkout-nsVtlYWD.js +103 -0
  2. package/dist/cjs/{ComponentError-D4OLnOkg.js → ComponentError-C4MdBBMe.js} +0 -10
  3. package/dist/cjs/{Refund-BztCb6AK.js → Refund-h6MCxFEE.js} +0 -97
  4. package/dist/cjs/bank-account-document-form-inputs_4.cjs.entry.js +5 -4
  5. package/dist/cjs/bank-account-form_9.cjs.entry.js +542 -0
  6. package/dist/cjs/{business.service-DwZSyIlI.js → business.service-OxMVnZMF.js} +3 -2
  7. package/dist/cjs/{check-pkg-version-DEcNwH27.js → check-pkg-version-Co_IKlwj.js} +4 -3
  8. package/dist/cjs/{checkout.service-C_qEIb8b.js → checkout.service-GgFXq7Ux.js} +3 -2
  9. package/dist/cjs/checkouts-list-core.cjs.entry.js +4 -3
  10. package/dist/cjs/custom-popper.cjs.entry.js +2 -2
  11. package/dist/cjs/{dispute.service-cQpQQMeh.js → dispute.service-XdB1KbMS.js} +3 -2
  12. package/dist/cjs/form-control-checkbox.cjs.entry.js +2 -2
  13. package/dist/cjs/form-control-date.cjs.entry.js +2 -2
  14. package/dist/cjs/form-control-file-v2_2.cjs.entry.js +3 -3
  15. package/dist/cjs/form-control-monetary.cjs.entry.js +2 -2
  16. package/dist/cjs/form-control-number-masked_2.cjs.entry.js +5 -3
  17. package/dist/cjs/form-control-number.cjs.entry.js +2 -2
  18. package/dist/cjs/form-control-radio.cjs.entry.js +2 -2
  19. package/dist/cjs/form-control-select_3.cjs.entry.js +4 -4
  20. package/dist/cjs/{get-business-o5jPq_ME.js → get-business-BJrtsomz.js} +2 -2
  21. package/dist/cjs/{get-payment-details-DwLcmCQs.js → get-payment-details-Ccd7IWqM.js} +4 -3
  22. package/dist/cjs/{get-payout-csv-DE_D9y08.js → get-payout-csv-CXEQkjDm.js} +2 -2
  23. package/dist/cjs/{get-subaccounts-CvtcQGsb.js → get-subaccounts-C4HDfc3o.js} +4 -3
  24. package/dist/cjs/gross-payment-chart-core.cjs.entry.js +1 -1
  25. package/dist/cjs/iframe-input-styles-state-CGWgxf_0.js +26 -0
  26. package/dist/cjs/{hidden-input_2.cjs.entry.js → iframe-input_4.cjs.entry.js} +153 -111
  27. package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +3 -2
  28. package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +6 -5
  29. package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +8 -8
  30. package/dist/cjs/justifi-business-details.cjs.entry.js +8 -7
  31. package/dist/cjs/justifi-business-form.cjs.entry.js +8 -7
  32. package/dist/cjs/justifi-checkout-core.cjs.entry.js +141 -0
  33. package/dist/cjs/justifi-checkout.cjs.entry.js +95 -80
  34. package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +10 -9
  35. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +10 -9
  36. package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +1 -1
  37. package/dist/cjs/justifi-dispute-management.cjs.entry.js +8 -7
  38. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +10 -9
  39. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +6 -5
  40. package/dist/cjs/justifi-order-terminals.cjs.entry.js +10 -9
  41. package/dist/cjs/justifi-owner-form_3.cjs.entry.js +6 -5
  42. package/dist/cjs/justifi-payment-details.cjs.entry.js +8 -7
  43. package/dist/cjs/justifi-payment-provisioning-core.cjs.entry.js +1 -1
  44. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +8 -7
  45. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +8 -7
  46. package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +2 -2
  47. package/dist/cjs/justifi-payments-list.cjs.entry.js +8 -7
  48. package/dist/cjs/justifi-payout-details.cjs.entry.js +8 -7
  49. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +8 -7
  50. package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +2 -2
  51. package/dist/cjs/justifi-payouts-list.cjs.entry.js +10 -9
  52. package/dist/cjs/justifi-refund-payment.cjs.entry.js +8 -7
  53. package/dist/cjs/justifi-season-interruption-insurance-core.cjs.entry.js +11 -10
  54. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +16 -13
  55. package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +5 -4
  56. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +8 -7
  57. package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +4 -3
  58. package/dist/cjs/justifi-terminals-list.cjs.entry.js +9 -8
  59. package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +6 -12
  60. package/dist/cjs/loader.cjs.js +1 -1
  61. package/dist/cjs/{package-cJqLX2S4.js → package-B7_ed3oS.js} +1 -1
  62. package/dist/cjs/payment-details-core.cjs.entry.js +8 -8
  63. package/dist/cjs/{payment-provisioning-actions-CZVlnRA0.js → payment-provisioning-actions-BkWSDJQQ.js} +2 -2
  64. package/dist/cjs/{payment.service-CVZ55YLl.js → payment.service-BU1Mwwnv.js} +3 -2
  65. package/dist/cjs/payments-list-core.cjs.entry.js +4 -3
  66. package/dist/cjs/payout-details-core.cjs.entry.js +3 -3
  67. package/dist/cjs/{payout.service-BlbHwzd_.js → payout.service-BjB-B6CX.js} +3 -2
  68. package/dist/cjs/payouts-list-core.cjs.entry.js +4 -3
  69. package/dist/cjs/table-filters-menu.cjs.entry.js +1 -1
  70. package/dist/cjs/terminal-orders-list-core.cjs.entry.js +5 -4
  71. package/dist/cjs/{terminal-orders-table-v0Sn7jUg.js → terminal-orders-table-FtFQqd0s.js} +3 -2
  72. package/dist/cjs/terminal-quantity-selector.cjs.entry.js +1 -1
  73. package/dist/cjs/{terminal.service-I07QoXPB.js → terminal.service-De-0eGdM.js} +3 -2
  74. package/dist/cjs/terminals-list-core.cjs.entry.js +4 -3
  75. package/dist/cjs/{utils-DvUQQLmR.js → utils-l0veqT9y.js} +1 -1
  76. package/dist/cjs/webcomponents.cjs.js +1 -1
  77. package/dist/collection/actions/checkout/checkout-actions.js +1 -2
  78. package/dist/collection/api/Checkout.js +3 -1
  79. package/dist/collection/api/ComponentError.js +0 -10
  80. package/dist/collection/collection-manifest.json +6 -14
  81. package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +2 -2
  82. package/dist/collection/components/{modular-checkout/sub-components/postal-code-form.js → checkout/billing-form/bank-account-billing-form-simple.js} +37 -25
  83. package/dist/collection/components/checkout/billing-form/billing-form-full.js +139 -0
  84. package/dist/collection/components/checkout/billing-form/billing-form-schema.js +24 -19
  85. package/dist/collection/components/checkout/billing-form/billing-form.js +16 -37
  86. package/dist/collection/components/checkout/billing-form/card-billing-form-simple.js +137 -0
  87. package/dist/collection/components/checkout/card-form/card-form.js +2 -2
  88. package/dist/collection/components/checkout/checkout-core.js +454 -0
  89. package/dist/collection/components/checkout/checkout.js +53 -158
  90. package/dist/collection/components/checkout/new-payment-method.js +2 -2
  91. package/dist/collection/components/checkout/payment-method-options.js +37 -18
  92. package/dist/collection/components/checkout/save-new-payment-method.js +1 -3
  93. package/dist/collection/components/checkout/saved-payment-method.js +1 -1
  94. package/dist/collection/components/checkout/sezzle-payment-method.js +240 -0
  95. package/dist/collection/components/checkouts-list/checkouts-list-core.js +1 -1
  96. package/dist/collection/components/checkouts-list/checkouts-list-filters.js +1 -1
  97. package/dist/collection/components/checkouts-list/checkouts-list.js +1 -1
  98. package/dist/collection/components/dispute-management/dispute-management-core.js +1 -1
  99. package/dist/collection/components/dispute-management/dispute-management.js +1 -1
  100. package/dist/collection/components/dispute-management/dispute-notification.js +1 -1
  101. package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +1 -1
  102. package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +1 -1
  103. package/dist/collection/components/dispute-management/dispute-response/customer-details.js +1 -1
  104. package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
  105. package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +1 -1
  106. package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +1 -1
  107. package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +1 -1
  108. package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +1 -1
  109. package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +1 -1
  110. package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +1 -1
  111. package/dist/collection/components/filters/table-filters-menu.js +1 -1
  112. package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +1 -1
  113. package/dist/collection/components/insurance/season-interruption/season-interruption-insurance-core.js +11 -11
  114. package/dist/collection/components/insurance/season-interruption/season-interruption-insurance.js +13 -10
  115. package/dist/collection/components/order-terminals/order-terminals.js +1 -1
  116. package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +1 -1
  117. package/dist/collection/components/payment-details/payment-details-core.js +8 -8
  118. package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +1 -1
  119. package/dist/collection/components/payments-list/payments-list-core.js +1 -1
  120. package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
  121. package/dist/collection/components/payments-list/payments-list.js +1 -1
  122. package/dist/collection/components/payout-details/payout-details-core.js +3 -3
  123. package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +1 -1
  124. package/dist/collection/components/payouts-list/payouts-list-core.js +1 -1
  125. package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
  126. package/dist/collection/components/payouts-list/payouts-list.js +1 -1
  127. package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +1 -1
  128. package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
  129. package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +1 -1
  130. package/dist/collection/components/terminals-list/terminals-list-core.js +1 -1
  131. package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
  132. package/dist/collection/components/terminals-list/terminals-list.js +1 -1
  133. package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +3 -10
  134. package/dist/collection/ui-components/custom-popper/custom-popper.js +2 -2
  135. package/dist/collection/ui-components/form/form-control-checkbox.js +2 -2
  136. package/dist/collection/ui-components/form/form-control-date.js +2 -2
  137. package/dist/collection/ui-components/form/form-control-file-v2.js +1 -1
  138. package/dist/collection/ui-components/form/form-control-file.js +2 -2
  139. package/dist/collection/ui-components/form/form-control-monetary.js +2 -2
  140. package/dist/collection/ui-components/form/form-control-number-masked.js +5 -3
  141. package/dist/collection/ui-components/form/form-control-number.js +2 -2
  142. package/dist/collection/ui-components/form/form-control-radio.js +2 -2
  143. package/dist/collection/ui-components/form/form-control-select.js +2 -2
  144. package/dist/collection/ui-components/form/form-control-text.js +2 -2
  145. package/dist/collection/ui-components/form/form-control-textarea.js +2 -2
  146. package/dist/collection/ui-components/form/hidden-input.js +1 -1
  147. package/dist/collection/ui-components/form/iframe-input.js +5 -10
  148. package/dist/docs.json +1444 -2230
  149. package/dist/esm/{Api-DQM93PRm.js → Api-Bes3KkG6.js} +1 -1
  150. package/dist/esm/Checkout-DfRTGCdt.js +101 -0
  151. package/dist/esm/{ComponentError-Cjcsf8ku.js → ComponentError-SdntD1xf.js} +1 -11
  152. package/dist/esm/{Payment-Bs0-9Lnt.js → Payment-93PpwzdC.js} +2 -2
  153. package/dist/esm/{Refund-4B3c-kLz.js → Refund-CISeDJoW.js} +2 -98
  154. package/dist/esm/additional-questions-details_5.entry.js +3 -3
  155. package/dist/esm/{badge-D-vrtiQR.js → badge-BRPxcFAe.js} +1 -1
  156. package/dist/esm/bank-account-document-form-inputs_4.entry.js +10 -9
  157. package/dist/esm/bank-account-form_9.entry.js +532 -0
  158. package/dist/esm/business-details-core.entry.js +3 -3
  159. package/dist/esm/{business.service-BgXdRyYa.js → business.service-Cx6MiBgY.js} +5 -4
  160. package/dist/esm/{button-DxM4-mlD.js → button-B_viNpoz.js} +1 -1
  161. package/dist/esm/{check-pkg-version-mGsb6VH3.js → check-pkg-version-DvajBJj9.js} +6 -5
  162. package/dist/esm/{checkout.service-CXeKDZTF.js → checkout.service-BQ2Z7hHe.js} +5 -4
  163. package/dist/esm/checkouts-list-core.entry.js +11 -10
  164. package/dist/esm/{checkouts-table-Djb7Yj6O.js → checkouts-table-YyKWgXbv.js} +3 -3
  165. package/dist/esm/custom-popper.entry.js +2 -2
  166. package/dist/esm/{dispute.service-DWs_TX-m.js → dispute.service-Bmw6fgc6.js} +5 -4
  167. package/dist/esm/form-alert_5.entry.js +1 -1
  168. package/dist/esm/form-control-checkbox.entry.js +5 -5
  169. package/dist/esm/form-control-date.entry.js +4 -4
  170. package/dist/esm/{form-control-error-text-Dew-m4MW.js → form-control-error-text-BvjVjw2l.js} +1 -1
  171. package/dist/esm/form-control-file-v2_2.entry.js +5 -5
  172. package/dist/esm/{form-control-help-text-CcPKT19_.js → form-control-help-text-Dggj4lH9.js} +1 -1
  173. package/dist/esm/form-control-monetary-provisioning.entry.js +3 -3
  174. package/dist/esm/form-control-monetary.entry.js +6 -6
  175. package/dist/esm/form-control-number-masked_2.entry.js +7 -5
  176. package/dist/esm/form-control-number.entry.js +5 -5
  177. package/dist/esm/form-control-radio.entry.js +3 -3
  178. package/dist/esm/form-control-select_3.entry.js +6 -6
  179. package/dist/esm/{get-business-Crb6P-iI.js → get-business-GEPTefIj.js} +2 -2
  180. package/dist/esm/{get-payment-details-j8nOngzB.js → get-payment-details-Rww84hl5.js} +6 -5
  181. package/dist/esm/{get-payout-csv-D-Lnooki.js → get-payout-csv-D7IYYqVL.js} +2 -2
  182. package/dist/esm/{get-subaccounts-C62B2OC_.js → get-subaccounts-0PmjUDEa.js} +7 -6
  183. package/dist/esm/gross-payment-chart-core.entry.js +5 -5
  184. package/dist/esm/{header-1-B0PFwGib.js → header-1-UMqoryJI.js} +1 -1
  185. package/dist/esm/{header-3-D3gxg6YU.js → header-3-DfV3YFNS.js} +1 -1
  186. package/dist/esm/iframe-input-styles-state-2KXH-_4X.js +23 -0
  187. package/dist/esm/{hidden-input_2.entry.js → iframe-input_4.entry.js} +146 -106
  188. package/dist/esm/{insurance-state-DQH40x6F.js → insurance-state-yzV5mr5o.js} +2 -2
  189. package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +8 -7
  190. package/dist/esm/justifi-additional-questions-form-step_9.entry.js +11 -10
  191. package/dist/esm/justifi-additional-statement_8.entry.js +9 -9
  192. package/dist/esm/justifi-business-details.entry.js +13 -12
  193. package/dist/esm/justifi-business-form.entry.js +15 -14
  194. package/dist/esm/justifi-business-representative-form-inputs.entry.js +1 -1
  195. package/dist/esm/justifi-checkout-core.entry.js +139 -0
  196. package/dist/esm/justifi-checkout.entry.js +97 -82
  197. package/dist/esm/justifi-checkouts-list-filters.entry.js +7 -6
  198. package/dist/esm/justifi-checkouts-list.entry.js +15 -14
  199. package/dist/esm/justifi-details.entry.js +2 -2
  200. package/dist/esm/justifi-dispute-management-core.entry.js +1 -1
  201. package/dist/esm/justifi-dispute-management.entry.js +11 -10
  202. package/dist/esm/justifi-dispute-notification_3.entry.js +16 -15
  203. package/dist/esm/justifi-gross-payment-chart.entry.js +11 -10
  204. package/dist/esm/justifi-order-terminals.entry.js +15 -14
  205. package/dist/esm/justifi-owner-form_3.entry.js +11 -10
  206. package/dist/esm/justifi-payment-details.entry.js +13 -12
  207. package/dist/esm/justifi-payment-provisioning-core.entry.js +3 -3
  208. package/dist/esm/justifi-payment-provisioning.entry.js +11 -10
  209. package/dist/esm/justifi-payment-transactions-list.entry.js +14 -13
  210. package/dist/esm/justifi-payments-list-filters.entry.js +4 -4
  211. package/dist/esm/justifi-payments-list.entry.js +15 -14
  212. package/dist/esm/justifi-payout-details.entry.js +13 -12
  213. package/dist/esm/justifi-payout-transactions-list.entry.js +14 -13
  214. package/dist/esm/justifi-payouts-list-filters.entry.js +4 -4
  215. package/dist/esm/justifi-payouts-list.entry.js +17 -16
  216. package/dist/esm/justifi-refund-payment.entry.js +14 -13
  217. package/dist/esm/justifi-season-interruption-insurance-core.entry.js +15 -14
  218. package/dist/esm/justifi-season-interruption-insurance.entry.js +19 -16
  219. package/dist/esm/justifi-terminal-orders-list-filters.entry.js +8 -7
  220. package/dist/esm/justifi-terminal-orders-list.entry.js +13 -12
  221. package/dist/esm/justifi-terminals-list-filters.entry.js +7 -6
  222. package/dist/esm/justifi-terminals-list.entry.js +15 -14
  223. package/dist/esm/justifi-tokenize-payment-method.entry.js +11 -17
  224. package/dist/esm/loader.js +1 -1
  225. package/dist/esm/{package-kbTAg0Fi.js → package-DwtqmD1M.js} +1 -1
  226. package/dist/esm/pagination-menu.entry.js +1 -1
  227. package/dist/esm/{parts-D3G5aVLy.js → parts-CVGBVdVC.js} +1 -1
  228. package/dist/esm/payment-details-core.entry.js +14 -14
  229. package/dist/esm/{payment-provisioning-actions-ONP8lDnV.js → payment-provisioning-actions-BIfyW239.js} +2 -2
  230. package/dist/esm/{payment.service-BnDr_9vX.js → payment.service-Ck1kdYXH.js} +5 -4
  231. package/dist/esm/payments-list-core.entry.js +12 -11
  232. package/dist/esm/{payments-status-DVYzDcJ4.js → payments-status-gL2bjUp9.js} +1 -1
  233. package/dist/esm/{payments-table-BuiNqlwv.js → payments-table-DrnN-flR.js} +3 -3
  234. package/dist/esm/payout-details-core.entry.js +10 -10
  235. package/dist/esm/{payout.service-Ai1aEuFC.js → payout.service-YOny8vA1.js} +5 -4
  236. package/dist/esm/payouts-list-core.entry.js +12 -11
  237. package/dist/esm/{payouts-status-Bae6G8Hq.js → payouts-status-BpBVp8j1.js} +1 -1
  238. package/dist/esm/{payouts-table-cgIXP54P.js → payouts-table-Bt0Dhq3E.js} +3 -3
  239. package/dist/esm/{skeleton-CZfDofm6.js → skeleton-MHyzfkPM.js} +1 -1
  240. package/dist/esm/{spinner-D-vbFqC6.js → spinner-CaGDuAi8.js} +1 -1
  241. package/dist/esm/{table-CTPfsGKi.js → table-B-m83mFl.js} +2 -2
  242. package/dist/esm/table-filters-menu.entry.js +3 -3
  243. package/dist/esm/terminal-orders-list-core.entry.js +11 -10
  244. package/dist/esm/{terminal-orders-table-CvK516_V.js → terminal-orders-table-shGx8Lcn.js} +7 -6
  245. package/dist/esm/terminal-quantity-selector.entry.js +2 -2
  246. package/dist/esm/{terminal.service-BLeBxTv4.js → terminal.service-CJbnbE1S.js} +5 -4
  247. package/dist/esm/terminals-list-core.entry.js +11 -10
  248. package/dist/esm/{terminals-table-2QGQITkt.js → terminals-table-DskXRPbS.js} +3 -3
  249. package/dist/esm/{utils-B7jE0g5_.js → utils-DIxPWgIk.js} +1 -1
  250. package/dist/esm/{utils-CBJo9jNE.js → utils-DOW3rBEH.js} +1 -1
  251. package/dist/esm/{utils-BeQLScSm.js → utils-Dccsn9BY.js} +1 -1
  252. package/dist/esm/webcomponents.js +1 -1
  253. package/dist/module/Checkout.js +121 -0
  254. package/dist/module/Payment.js +1 -1
  255. package/dist/module/Refund.js +1 -127
  256. package/dist/module/additional-statement.js +2 -2
  257. package/dist/module/bank-account-billing-form-simple.js +81 -0
  258. package/dist/module/bank-account-document-inputs.js +2 -1
  259. package/dist/module/bank-account-form.js +1 -83
  260. package/dist/module/{bank-account.js → bank-account-form2.js} +8 -25
  261. package/dist/module/billing-form-full.js +95 -0
  262. package/dist/module/billing-form-schema.js +25 -20
  263. package/dist/module/billing-form.js +34 -65
  264. package/dist/module/business-additional-questions-form-step.js +1 -1
  265. package/dist/module/business-bank-account-form-step-core.js +2 -1
  266. package/dist/module/business-bank-account-form-step.js +2 -1
  267. package/dist/module/business-core-info-form-step.js +1 -1
  268. package/dist/module/business-owners-form-step.js +1 -1
  269. package/dist/module/business-representative-form-step.js +1 -1
  270. package/dist/module/business-terms-conditions-form-step.js +2 -1
  271. package/dist/module/business.service.js +2 -1
  272. package/dist/module/button.js +1 -1
  273. package/dist/module/cancellation-policy.js +2 -2
  274. package/dist/module/{postal-code-form.js → card-billing-form-simple.js} +15 -26
  275. package/dist/module/card-form.js +1 -91
  276. package/dist/module/card-form2.js +10 -27
  277. package/dist/module/{Analytics.js → check-pkg-version.js} +23 -22
  278. package/dist/module/checkout-core.js +292 -0
  279. package/dist/module/checkout.service.js +2 -1
  280. package/dist/module/checkouts-list-core2.js +3 -2
  281. package/dist/module/custom-popper2.js +2 -2
  282. package/dist/module/customer-details.js +2 -2
  283. package/dist/module/dispute-management-core.js +1 -1
  284. package/dist/module/dispute-notification.js +2 -2
  285. package/dist/module/dispute-response-actions.js +2 -1
  286. package/dist/module/dispute-response-core.js +2 -2
  287. package/dist/module/dispute-response.js +3 -3
  288. package/dist/module/duplicate-charge.js +2 -2
  289. package/dist/module/electronic-evidence.js +2 -2
  290. package/dist/module/form-control-checkbox2.js +2 -2
  291. package/dist/module/form-control-date2.js +2 -2
  292. package/dist/module/form-control-file-v22.js +1 -1
  293. package/dist/module/form-control-file2.js +2 -2
  294. package/dist/module/form-control-monetary2.js +2 -2
  295. package/dist/module/form-control-number-masked2.js +5 -3
  296. package/dist/module/form-control-number.js +2 -2
  297. package/dist/module/form-control-radio2.js +2 -2
  298. package/dist/module/form-control-select2.js +2 -2
  299. package/dist/module/form-control-text2.js +2 -2
  300. package/dist/module/form-control-textarea2.js +2 -2
  301. package/dist/module/get-business.js +1 -1
  302. package/dist/module/get-payment-details.js +3 -2
  303. package/dist/module/get-payout-csv.js +1 -1
  304. package/dist/module/get-subaccounts.js +2 -1
  305. package/dist/module/gross-payment-chart-core2.js +1 -1
  306. package/dist/module/hidden-input2.js +1 -1
  307. package/dist/module/iframe-input2.js +5 -5
  308. package/dist/module/insurance-state.js +7 -1
  309. package/dist/module/justifi-bank-account-billing-form-simple.d.ts +11 -0
  310. package/dist/module/justifi-bank-account-billing-form-simple.js +6 -0
  311. package/dist/module/justifi-billing-form-full.d.ts +11 -0
  312. package/dist/module/justifi-billing-form-full.js +6 -0
  313. package/dist/module/justifi-business-details.js +2 -2
  314. package/dist/module/justifi-business-form.js +3 -2
  315. package/dist/module/justifi-card-billing-form-simple.d.ts +11 -0
  316. package/dist/module/justifi-card-billing-form-simple.js +6 -0
  317. package/dist/module/{justifi-apple-pay.d.ts → justifi-checkout-core.d.ts} +4 -4
  318. package/dist/module/justifi-checkout-core.js +6 -0
  319. package/dist/module/justifi-checkout.js +138 -134
  320. package/dist/module/justifi-checkouts-list-filters.js +3 -2
  321. package/dist/module/justifi-checkouts-list.js +4 -3
  322. package/dist/module/justifi-dispute-management.js +3 -3
  323. package/dist/module/justifi-gross-payment-chart.js +3 -2
  324. package/dist/module/justifi-new-payment-method.js +1 -214
  325. package/dist/module/justifi-order-terminals.js +5 -4
  326. package/dist/module/justifi-payment-details.js +2 -2
  327. package/dist/module/justifi-payment-provisioning.js +3 -2
  328. package/dist/module/justifi-payment-transactions-list.js +4 -3
  329. package/dist/module/justifi-payments-list-filters.js +2 -2
  330. package/dist/module/justifi-payments-list.js +5 -4
  331. package/dist/module/justifi-payout-details.js +3 -2
  332. package/dist/module/justifi-payout-transactions-list.js +4 -3
  333. package/dist/module/justifi-payouts-list-filters.js +2 -2
  334. package/dist/module/justifi-payouts-list.js +4 -3
  335. package/dist/module/justifi-refund-payment.js +3 -2
  336. package/dist/module/justifi-saved-payment-method.js +1 -57
  337. package/dist/module/justifi-season-interruption-insurance.js +15 -11
  338. package/dist/module/justifi-terminal-orders-list-filters.js +4 -3
  339. package/dist/module/justifi-terminal-orders-list.js +4 -3
  340. package/dist/module/justifi-terminals-list-filters.js +3 -2
  341. package/dist/module/justifi-terminals-list.js +4 -3
  342. package/dist/module/justifi-tokenize-payment-method.js +102 -18
  343. package/dist/module/legal-address-form-step.js +1 -1
  344. package/dist/module/new-payment-method.js +222 -0
  345. package/dist/module/owner-form-core2.js +1 -1
  346. package/dist/module/package.js +3 -3
  347. package/dist/module/parts.js +1 -1
  348. package/dist/module/payment-details-core2.js +8 -8
  349. package/dist/module/payment-method-options.js +131 -23
  350. package/dist/module/payment-provisioning-actions.js +1 -1
  351. package/dist/module/payment-provisioning-core.js +1 -1
  352. package/dist/module/payment.service.js +2 -1
  353. package/dist/module/payments-list-core2.js +3 -2
  354. package/dist/module/payout-details-core2.js +3 -3
  355. package/dist/module/payout.service.js +2 -1
  356. package/dist/module/payouts-list-core2.js +3 -2
  357. package/dist/module/product-or-service.js +2 -2
  358. package/dist/module/refund-policy.js +2 -2
  359. package/dist/module/save-new-payment-method.js +2 -6
  360. package/dist/module/saved-payment-method.js +79 -0
  361. package/dist/module/season-interruption-insurance-core.js +13 -14
  362. package/dist/module/sezzle-payment-method.js +18 -24
  363. package/dist/module/shipping-details.js +2 -2
  364. package/dist/module/table-filters-menu2.js +1 -1
  365. package/dist/module/terminal-orders-list-core2.js +3 -2
  366. package/dist/module/terminal-quantity-selector2.js +2 -2
  367. package/dist/module/terminal.service.js +2 -1
  368. package/dist/module/terminals-list-core2.js +3 -2
  369. package/dist/module/utils4.js +1 -1
  370. package/dist/types/api/Checkout.d.ts +13 -15
  371. package/dist/types/api/ComponentError.d.ts +1 -10
  372. package/dist/types/components/{modular-checkout/sub-components/postal-code-form.d.ts → checkout/billing-form/bank-account-billing-form-simple.d.ts} +5 -6
  373. package/dist/types/components/{modular-checkout/sub-components/billing-information-form.d.ts → checkout/billing-form/billing-form-full.d.ts} +4 -4
  374. package/dist/types/components/checkout/billing-form/billing-form-schema.d.ts +35 -5
  375. package/dist/types/components/checkout/billing-form/billing-form.d.ts +3 -9
  376. package/dist/types/components/checkout/billing-form/card-billing-form-simple.d.ts +18 -0
  377. package/dist/types/components/checkout/checkout-core.d.ts +49 -0
  378. package/dist/types/components/checkout/checkout.d.ts +11 -30
  379. package/dist/types/components/checkout/payment-method-options.d.ts +2 -2
  380. package/dist/types/components/{modular-checkout/sub-components → checkout}/sezzle-payment-method.d.ts +9 -3
  381. package/dist/types/components/insurance/season-interruption/season-interruption-insurance-core.d.ts +1 -0
  382. package/dist/types/components/insurance/season-interruption/season-interruption-insurance.d.ts +2 -2
  383. package/dist/types/components/tokenize-payment-method/tokenize-payment-method.d.ts +2 -2
  384. package/dist/types/components.d.ts +115 -401
  385. package/dist/types/ui-components/form/iframe-input.d.ts +1 -2
  386. package/dist/webcomponents/p-08ae973e.entry.js +1 -0
  387. package/dist/webcomponents/p-0ac1bb26.entry.js +1 -0
  388. package/dist/webcomponents/p-0ced05b3.entry.js +1 -0
  389. package/dist/webcomponents/p-144f15c1.entry.js +1 -0
  390. package/dist/webcomponents/p-20a75acd.entry.js +1 -0
  391. package/dist/webcomponents/{p-0f5e61bc.entry.js → p-254724c4.entry.js} +1 -1
  392. package/dist/webcomponents/p-2634a1ee.entry.js +1 -0
  393. package/dist/webcomponents/p-28133336.entry.js +1 -0
  394. package/dist/webcomponents/p-29f81159.entry.js +1 -0
  395. package/dist/webcomponents/p-2b1090d0.entry.js +1 -0
  396. package/dist/webcomponents/{p-06ff03e7.entry.js → p-2e734e97.entry.js} +1 -1
  397. package/dist/webcomponents/p-3aafab63.entry.js +1 -0
  398. package/dist/webcomponents/p-3b98d8ca.entry.js +1 -0
  399. package/dist/webcomponents/p-3f771784.entry.js +1 -0
  400. package/dist/webcomponents/p-4114a328.entry.js +1 -0
  401. package/dist/webcomponents/p-41ab2378.entry.js +1 -0
  402. package/dist/webcomponents/p-423ad3eb.entry.js +1 -0
  403. package/dist/webcomponents/p-43752d57.entry.js +1 -0
  404. package/dist/webcomponents/{p-c663b439.entry.js → p-437aaa5e.entry.js} +1 -1
  405. package/dist/webcomponents/p-44FkPJq7.js +1 -0
  406. package/dist/webcomponents/p-50f8e87e.entry.js +1 -0
  407. package/dist/webcomponents/p-52092407.entry.js +1 -0
  408. package/dist/webcomponents/p-52ede69d.entry.js +1 -0
  409. package/dist/webcomponents/p-540c31f2.entry.js +1 -0
  410. package/dist/webcomponents/p-5B_nojEF.js +1 -0
  411. package/dist/webcomponents/p-5dbd1b93.entry.js +1 -0
  412. package/dist/webcomponents/p-6158cf60.entry.js +1 -0
  413. package/dist/webcomponents/p-652cc155.entry.js +1 -0
  414. package/dist/webcomponents/{p-fffd5bc7.entry.js → p-66a77e7d.entry.js} +1 -1
  415. package/dist/webcomponents/p-6816c021.entry.js +1 -0
  416. package/dist/webcomponents/{p-127406b5.entry.js → p-69800e4a.entry.js} +1 -1
  417. package/dist/webcomponents/p-6dd98d75.entry.js +1 -0
  418. package/dist/webcomponents/p-7528f993.entry.js +1 -0
  419. package/dist/webcomponents/p-7bc9d8f4.entry.js +1 -0
  420. package/dist/webcomponents/p-7be2ef8d.entry.js +1 -0
  421. package/dist/webcomponents/p-7d3a563f.entry.js +1 -0
  422. package/dist/webcomponents/{p-fe001786.entry.js → p-831337bc.entry.js} +1 -1
  423. package/dist/webcomponents/p-8dfc21d5.entry.js +1 -0
  424. package/dist/webcomponents/p-96b75110.entry.js +1 -0
  425. package/dist/webcomponents/p-BEXEpjn_.js +1 -0
  426. package/dist/webcomponents/p-BGUDiFCH.js +1 -0
  427. package/dist/webcomponents/{p-DCDU6JB3.js → p-BRBt7Vt-.js} +1 -1
  428. package/dist/webcomponents/{p-5aA7gjr5.js → p-BTS3E50C.js} +1 -1
  429. package/dist/webcomponents/p-BZ70sqbi.js +1 -0
  430. package/dist/webcomponents/p-BiWuElbM.js +1 -0
  431. package/dist/webcomponents/{p-Cm_ywVHL.js → p-BvLgDun_.js} +1 -1
  432. package/dist/webcomponents/{p-B9GgcQ-7.js → p-BwRi5Eou.js} +1 -1
  433. package/dist/webcomponents/{p-D2muobcE.js → p-C5RuuShs.js} +1 -1
  434. package/dist/webcomponents/{p-C8ll3Wwp.js → p-CA1oADw4.js} +1 -1
  435. package/dist/webcomponents/p-CHB0cPw7.js +1 -0
  436. package/dist/webcomponents/{p-B2csvKrZ.js → p-CSNli0tl.js} +1 -1
  437. package/dist/webcomponents/{p-D3G5aVLy.js → p-CVGBVdVC.js} +1 -1
  438. package/dist/webcomponents/{p-Dj1uo4J3.js → p-CZ8q2CPi.js} +1 -1
  439. package/dist/webcomponents/p-Cs0cIpIm.js +1 -0
  440. package/dist/webcomponents/p-Cuxr_9xa.js +1 -0
  441. package/dist/webcomponents/{p-BFL-wXPM.js → p-CvXbmLtl.js} +1 -1
  442. package/dist/webcomponents/{p-vHbP4g3Q.js → p-D-vUkGsU.js} +1 -1
  443. package/dist/webcomponents/p-D6ssxpjT.js +1 -0
  444. package/dist/webcomponents/p-DAasymX_.js +1 -0
  445. package/dist/webcomponents/{p-BvyiDejp.js → p-DBhBVIU-.js} +1 -1
  446. package/dist/webcomponents/{p-B7jE0g5_.js → p-DIxPWgIk.js} +1 -1
  447. package/dist/webcomponents/p-DT-cTREr.js +1 -0
  448. package/dist/webcomponents/p-DZgAEPoo.js +1 -0
  449. package/dist/webcomponents/p-DZw7v4st.js +1 -0
  450. package/dist/webcomponents/p-Dgo6D5G7.js +1 -0
  451. package/dist/webcomponents/{p-CEYGUVns.js → p-DkaX7Taq.js} +1 -1
  452. package/dist/webcomponents/p-DniQ6yo6.js +1 -0
  453. package/dist/webcomponents/p-DwtqmD1M.js +1 -0
  454. package/dist/webcomponents/p-G_As8rAe.js +1 -0
  455. package/dist/webcomponents/{p-BRtwZAeZ.js → p-PmGAGJ5K.js} +1 -1
  456. package/dist/webcomponents/{p-DX_mixvZ.js → p-QxJlhLWM.js} +1 -1
  457. package/dist/webcomponents/p-SdntD1xf.js +1 -0
  458. package/dist/webcomponents/{p-BDUTtU21.js → p-Y-KcAUY_.js} +1 -1
  459. package/dist/webcomponents/p-a1ce996c.entry.js +1 -0
  460. package/dist/webcomponents/p-a3c5ac1c.entry.js +1 -0
  461. package/dist/webcomponents/p-af3ef542.entry.js +1 -0
  462. package/dist/webcomponents/p-b3e8e00f.entry.js +1 -0
  463. package/dist/webcomponents/p-b46bf62f.entry.js +1 -0
  464. package/dist/webcomponents/p-b8b7603c.entry.js +1 -0
  465. package/dist/webcomponents/p-be165165.entry.js +1 -0
  466. package/dist/webcomponents/{p-904acc70.entry.js → p-c711551a.entry.js} +1 -1
  467. package/dist/webcomponents/p-c8ae1620.entry.js +1 -0
  468. package/dist/webcomponents/p-d47a05ba.entry.js +1 -0
  469. package/dist/webcomponents/p-d54963ce.entry.js +1 -0
  470. package/dist/webcomponents/p-d5505b45.entry.js +1 -0
  471. package/dist/webcomponents/p-d6f02807.entry.js +1 -0
  472. package/dist/webcomponents/p-d711f296.entry.js +1 -0
  473. package/dist/webcomponents/p-d9704f8c.entry.js +1 -0
  474. package/dist/webcomponents/{p-b06b1886.entry.js → p-da6790bb.entry.js} +1 -1
  475. package/dist/webcomponents/p-da731140.entry.js +1 -0
  476. package/dist/webcomponents/{p-ee2afa41.entry.js → p-db9f3fcd.entry.js} +4 -4
  477. package/dist/webcomponents/p-e3197269.entry.js +1 -0
  478. package/dist/webcomponents/p-e4dbec27.entry.js +1 -0
  479. package/dist/webcomponents/{p-0c37be96.entry.js → p-e7b60660.entry.js} +1 -1
  480. package/dist/webcomponents/{p-367338c8.entry.js → p-f057b215.entry.js} +1 -1
  481. package/dist/webcomponents/p-f9a18fcb.entry.js +1 -0
  482. package/dist/webcomponents/p-fa30d8bd.entry.js +1 -0
  483. package/dist/webcomponents/p-fc1e3832.entry.js +1 -0
  484. package/dist/webcomponents/p-lZ9GOnvt.js +1 -0
  485. package/dist/webcomponents/p-qnx9PpK1.js +1 -0
  486. package/dist/webcomponents/p-vi4XpHew.js +1 -0
  487. package/dist/webcomponents/p-zRPvfo_G.js +1 -0
  488. package/dist/webcomponents/webcomponents.esm.js +1 -1
  489. package/package.json +1 -1
  490. package/dist/cjs/bank-account-form.cjs.entry.js +0 -63
  491. package/dist/cjs/card-form.cjs.entry.js +0 -71
  492. package/dist/cjs/checkout.store-mEv437nN.js +0 -38
  493. package/dist/cjs/justifi-apple-pay.cjs.entry.js +0 -852
  494. package/dist/cjs/justifi-bank-account-form_5.cjs.entry.js +0 -277
  495. package/dist/cjs/justifi-billing-form.cjs.entry.js +0 -76
  496. package/dist/cjs/justifi-button_5.cjs.entry.js +0 -444
  497. package/dist/cjs/justifi-new-payment-method.cjs.entry.js +0 -99
  498. package/dist/cjs/justifi-payment-method-options.cjs.entry.js +0 -75
  499. package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +0 -31
  500. package/dist/cjs/justifi-saved-payment-methods_2.cjs.entry.js +0 -116
  501. package/dist/cjs/justifi-skeleton.cjs.entry.js +0 -17
  502. package/dist/cjs/payment-method-option-utils-CfLXhpsL.js +0 -25
  503. package/dist/collection/api/ApplePay.js +0 -119
  504. package/dist/collection/api/BillingInformation.js +0 -1
  505. package/dist/collection/api/PaymentMethod.js +0 -1
  506. package/dist/collection/api/services/apple-pay.service.js +0 -358
  507. package/dist/collection/components/modular-checkout/modular-checkout.js +0 -494
  508. package/dist/collection/components/modular-checkout/sub-components/apple-pay-skeleton.js +0 -10
  509. package/dist/collection/components/modular-checkout/sub-components/apple-pay.js +0 -546
  510. package/dist/collection/components/modular-checkout/sub-components/bank-account-skeleton.js +0 -10
  511. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +0 -98
  512. package/dist/collection/components/modular-checkout/sub-components/billing-form-schema.js +0 -21
  513. package/dist/collection/components/modular-checkout/sub-components/billing-information-form.js +0 -97
  514. package/dist/collection/components/modular-checkout/sub-components/card-form-skeleton.js +0 -10
  515. package/dist/collection/components/modular-checkout/sub-components/card-form.js +0 -102
  516. package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +0 -113
  517. package/dist/collection/components/modular-checkout/sub-components/saved-payment-methods.js +0 -40
  518. package/dist/collection/components/modular-checkout/sub-components/sezzle-payment-method.js +0 -127
  519. package/dist/collection/components/modular-checkout/sub-components/summary.js +0 -12
  520. package/dist/collection/store/checkout.store.js +0 -33
  521. package/dist/collection/ui-components/apple-pay-button.js +0 -146
  522. package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +0 -176
  523. package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +0 -83
  524. package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +0 -108
  525. package/dist/esm/bank-account-form.entry.js +0 -61
  526. package/dist/esm/card-form.entry.js +0 -69
  527. package/dist/esm/checkout.store-QrBBYQfi.js +0 -35
  528. package/dist/esm/justifi-apple-pay.entry.js +0 -850
  529. package/dist/esm/justifi-bank-account-form_5.entry.js +0 -271
  530. package/dist/esm/justifi-billing-form.entry.js +0 -74
  531. package/dist/esm/justifi-button_5.entry.js +0 -438
  532. package/dist/esm/justifi-new-payment-method.entry.js +0 -97
  533. package/dist/esm/justifi-payment-method-options.entry.js +0 -73
  534. package/dist/esm/justifi-saved-payment-method.entry.js +0 -29
  535. package/dist/esm/justifi-saved-payment-methods_2.entry.js +0 -113
  536. package/dist/esm/justifi-skeleton.entry.js +0 -15
  537. package/dist/esm/payment-method-option-utils-Cm6lAaP1.js +0 -23
  538. package/dist/module/billing-information-form.js +0 -97
  539. package/dist/module/checkout.store.js +0 -35
  540. package/dist/module/header-2.js +0 -8
  541. package/dist/module/header-3.js +0 -8
  542. package/dist/module/justifi-apple-pay.js +0 -892
  543. package/dist/module/justifi-bank-account-form.d.ts +0 -11
  544. package/dist/module/justifi-bank-account-form.js +0 -6
  545. package/dist/module/justifi-billing-information-form.d.ts +0 -11
  546. package/dist/module/justifi-billing-information-form.js +0 -6
  547. package/dist/module/justifi-button.d.ts +0 -11
  548. package/dist/module/justifi-button.js +0 -6
  549. package/dist/module/justifi-button2.js +0 -41
  550. package/dist/module/justifi-card-form.d.ts +0 -11
  551. package/dist/module/justifi-card-form.js +0 -6
  552. package/dist/module/justifi-checkout-summary.d.ts +0 -11
  553. package/dist/module/justifi-checkout-summary.js +0 -6
  554. package/dist/module/justifi-header.d.ts +0 -11
  555. package/dist/module/justifi-header.js +0 -6
  556. package/dist/module/justifi-header2.js +0 -43
  557. package/dist/module/justifi-modular-checkout.d.ts +0 -11
  558. package/dist/module/justifi-modular-checkout.js +0 -6
  559. package/dist/module/justifi-postal-code-form.d.ts +0 -11
  560. package/dist/module/justifi-postal-code-form.js +0 -6
  561. package/dist/module/justifi-saved-payment-methods.d.ts +0 -11
  562. package/dist/module/justifi-saved-payment-methods.js +0 -6
  563. package/dist/module/justifi-skeleton.d.ts +0 -11
  564. package/dist/module/justifi-skeleton.js +0 -39
  565. package/dist/module/modular-checkout.js +0 -402
  566. package/dist/module/payment-method-option-utils.js +0 -23
  567. package/dist/module/payment-method-option.d.ts +0 -11
  568. package/dist/module/payment-method-option.js +0 -6
  569. package/dist/module/payment-method-option2.js +0 -50
  570. package/dist/module/saved-payment-methods.js +0 -72
  571. package/dist/module/summary.js +0 -34
  572. package/dist/types/api/ApplePay.d.ts +0 -195
  573. package/dist/types/api/BillingInformation.d.ts +0 -13
  574. package/dist/types/api/PaymentMethod.d.ts +0 -21
  575. package/dist/types/api/services/apple-pay.service.d.ts +0 -63
  576. package/dist/types/components/modular-checkout/modular-checkout.d.ts +0 -41
  577. package/dist/types/components/modular-checkout/sub-components/apple-pay-skeleton.d.ts +0 -6
  578. package/dist/types/components/modular-checkout/sub-components/apple-pay.d.ts +0 -38
  579. package/dist/types/components/modular-checkout/sub-components/bank-account-skeleton.d.ts +0 -6
  580. package/dist/types/components/modular-checkout/sub-components/bank-account.d.ts +0 -18
  581. package/dist/types/components/modular-checkout/sub-components/billing-form-schema.d.ts +0 -23
  582. package/dist/types/components/modular-checkout/sub-components/card-form-skeleton.d.ts +0 -6
  583. package/dist/types/components/modular-checkout/sub-components/card-form.d.ts +0 -20
  584. package/dist/types/components/modular-checkout/sub-components/payment-method-option.d.ts +0 -8
  585. package/dist/types/components/modular-checkout/sub-components/saved-payment-methods.d.ts +0 -7
  586. package/dist/types/components/modular-checkout/sub-components/summary.d.ts +0 -3
  587. package/dist/types/store/checkout.store.d.ts +0 -26
  588. package/dist/types/ui-components/apple-pay-button.d.ts +0 -17
  589. package/dist/types/ui-components/shadow-dom-components/justifi-button.d.ts +0 -13
  590. package/dist/types/ui-components/shadow-dom-components/justifi-skeleton.d.ts +0 -10
  591. package/dist/webcomponents/p-0b2f1cdd.entry.js +0 -1
  592. package/dist/webcomponents/p-154a298b.entry.js +0 -1
  593. package/dist/webcomponents/p-1eb52e5c.entry.js +0 -1
  594. package/dist/webcomponents/p-2041f39c.entry.js +0 -1
  595. package/dist/webcomponents/p-20af3042.entry.js +0 -1
  596. package/dist/webcomponents/p-271648dd.entry.js +0 -1
  597. package/dist/webcomponents/p-28beac6a.entry.js +0 -1
  598. package/dist/webcomponents/p-30c432ab.entry.js +0 -1
  599. package/dist/webcomponents/p-35198019.entry.js +0 -1
  600. package/dist/webcomponents/p-39af38f6.entry.js +0 -1
  601. package/dist/webcomponents/p-4022a5ec.entry.js +0 -1
  602. package/dist/webcomponents/p-426986d1.entry.js +0 -1
  603. package/dist/webcomponents/p-450eeb37.entry.js +0 -1
  604. package/dist/webcomponents/p-453bcb9d.entry.js +0 -1
  605. package/dist/webcomponents/p-49754c1d.entry.js +0 -1
  606. package/dist/webcomponents/p-4d03b096.entry.js +0 -1
  607. package/dist/webcomponents/p-509d9191.entry.js +0 -1
  608. package/dist/webcomponents/p-52be4ff0.entry.js +0 -1
  609. package/dist/webcomponents/p-54cc3fc8.entry.js +0 -1
  610. package/dist/webcomponents/p-54ff0e4f.entry.js +0 -1
  611. package/dist/webcomponents/p-56f91bae.entry.js +0 -1
  612. package/dist/webcomponents/p-5b4e8845.entry.js +0 -1
  613. package/dist/webcomponents/p-5c82e024.entry.js +0 -1
  614. package/dist/webcomponents/p-5cfca5e0.entry.js +0 -1
  615. package/dist/webcomponents/p-6567c1ce.entry.js +0 -1
  616. package/dist/webcomponents/p-67265fb9.entry.js +0 -1
  617. package/dist/webcomponents/p-689562b1.entry.js +0 -1
  618. package/dist/webcomponents/p-68d99790.entry.js +0 -1
  619. package/dist/webcomponents/p-6d8355f0.entry.js +0 -1
  620. package/dist/webcomponents/p-6da19fde.entry.js +0 -1
  621. package/dist/webcomponents/p-6e40a80f.entry.js +0 -1
  622. package/dist/webcomponents/p-6f30cfa8.entry.js +0 -1
  623. package/dist/webcomponents/p-6f94530d.entry.js +0 -1
  624. package/dist/webcomponents/p-794224cb.entry.js +0 -1
  625. package/dist/webcomponents/p-79454e79.entry.js +0 -1
  626. package/dist/webcomponents/p-79684a85.entry.js +0 -1
  627. package/dist/webcomponents/p-7b5d48f7.entry.js +0 -1
  628. package/dist/webcomponents/p-7b5e899e.entry.js +0 -1
  629. package/dist/webcomponents/p-7d59de81.entry.js +0 -1
  630. package/dist/webcomponents/p-7f4305a2.entry.js +0 -1
  631. package/dist/webcomponents/p-813858cb.entry.js +0 -1
  632. package/dist/webcomponents/p-B8tUOqiv.js +0 -1
  633. package/dist/webcomponents/p-BO4xqc4w.js +0 -1
  634. package/dist/webcomponents/p-BYakc1Om.js +0 -1
  635. package/dist/webcomponents/p-Bou1Z4Bm.js +0 -1
  636. package/dist/webcomponents/p-Bz8JT676.js +0 -1
  637. package/dist/webcomponents/p-C0EFqY0W.js +0 -1
  638. package/dist/webcomponents/p-CLjv4frq.js +0 -1
  639. package/dist/webcomponents/p-Cc27pPPQ.js +0 -1
  640. package/dist/webcomponents/p-Cjcsf8ku.js +0 -1
  641. package/dist/webcomponents/p-D522G7Ja.js +0 -1
  642. package/dist/webcomponents/p-DH8F0bsw.js +0 -1
  643. package/dist/webcomponents/p-DSekXpCa.js +0 -1
  644. package/dist/webcomponents/p-DSfL8jLw.js +0 -1
  645. package/dist/webcomponents/p-DVPcHdzq.js +0 -1
  646. package/dist/webcomponents/p-DYGIC0QH.js +0 -1
  647. package/dist/webcomponents/p-DiWKhLRS.js +0 -1
  648. package/dist/webcomponents/p-DkGfv8M-.js +0 -1
  649. package/dist/webcomponents/p-DtsIovbb.js +0 -1
  650. package/dist/webcomponents/p-Dv7YEshZ.js +0 -1
  651. package/dist/webcomponents/p-FdjD8N0u.js +0 -1
  652. package/dist/webcomponents/p-ObR0KZw0.js +0 -1
  653. package/dist/webcomponents/p-Sz-UKsNL.js +0 -1
  654. package/dist/webcomponents/p-a2b597ef.entry.js +0 -1
  655. package/dist/webcomponents/p-a4cb4c39.entry.js +0 -1
  656. package/dist/webcomponents/p-a6fdf5b8.entry.js +0 -1
  657. package/dist/webcomponents/p-a7ab198e.entry.js +0 -1
  658. package/dist/webcomponents/p-aac4b32b.entry.js +0 -1
  659. package/dist/webcomponents/p-b56d75d5.entry.js +0 -1
  660. package/dist/webcomponents/p-b5ed41c0.entry.js +0 -1
  661. package/dist/webcomponents/p-baaef16c.entry.js +0 -1
  662. package/dist/webcomponents/p-bec23c19.entry.js +0 -1
  663. package/dist/webcomponents/p-c9d5625c.entry.js +0 -1
  664. package/dist/webcomponents/p-cd6c6c2b.entry.js +0 -1
  665. package/dist/webcomponents/p-cd89e908.entry.js +0 -1
  666. package/dist/webcomponents/p-cf115375.entry.js +0 -1
  667. package/dist/webcomponents/p-cf5256f3.entry.js +0 -1
  668. package/dist/webcomponents/p-e0ba82b6.entry.js +0 -1
  669. package/dist/webcomponents/p-e105f664.entry.js +0 -1
  670. package/dist/webcomponents/p-e5c94a1f.entry.js +0 -1
  671. package/dist/webcomponents/p-e86c876e.entry.js +0 -1
  672. package/dist/webcomponents/p-f53ff470.entry.js +0 -1
  673. package/dist/webcomponents/p-kbTAg0Fi.js +0 -1
@@ -1,892 +0,0 @@
1
- import { h, proxyCustomElement, HTMLElement, createEvent } from '@stencil/core/internal/client';
2
- import { S as StyledHost } from './styled-host.js';
3
- import './details.js';
4
- import './event-types.js';
5
- import { S as Skeleton } from './skeleton.js';
6
- import { c as checkoutStore, o as onChange } from './checkout.store.js';
7
-
8
- var ApplePaySessionStatus;
9
- (function (ApplePaySessionStatus) {
10
- ApplePaySessionStatus["STATUS_SUCCESS"] = "STATUS_SUCCESS";
11
- ApplePaySessionStatus["STATUS_FAILURE"] = "STATUS_FAILURE";
12
- })(ApplePaySessionStatus || (ApplePaySessionStatus = {}));
13
- var ApplePayButtonType;
14
- (function (ApplePayButtonType) {
15
- ApplePayButtonType["PLAIN"] = "plain";
16
- ApplePayButtonType["BUY"] = "buy";
17
- ApplePayButtonType["SET_UP"] = "set-up";
18
- ApplePayButtonType["DONATE"] = "donate";
19
- ApplePayButtonType["CHECK_OUT"] = "check-out";
20
- ApplePayButtonType["BOOK"] = "book";
21
- ApplePayButtonType["SUBSCRIBE"] = "subscribe";
22
- })(ApplePayButtonType || (ApplePayButtonType = {}));
23
- var ApplePayButtonStyle;
24
- (function (ApplePayButtonStyle) {
25
- ApplePayButtonStyle["BLACK"] = "black";
26
- ApplePayButtonStyle["WHITE"] = "white";
27
- ApplePayButtonStyle["WHITE_OUTLINE"] = "white-outline";
28
- })(ApplePayButtonStyle || (ApplePayButtonStyle = {}));
29
- var ApplePayMerchantCapability;
30
- (function (ApplePayMerchantCapability) {
31
- ApplePayMerchantCapability["SUPPORTS_3DS"] = "supports3DS";
32
- ApplePayMerchantCapability["SUPPORTS_EMV"] = "supportsEMV";
33
- ApplePayMerchantCapability["SUPPORTS_CREDIT"] = "supportsCredit";
34
- ApplePayMerchantCapability["SUPPORTS_DEBIT"] = "supportsDebit";
35
- })(ApplePayMerchantCapability || (ApplePayMerchantCapability = {}));
36
- class ApplePayConfig {
37
- constructor(data) {
38
- this.merchantIdentifier = data.merchantIdentifier;
39
- this.displayName = data.displayName;
40
- this.initiative = data.initiative;
41
- this.initiativeContext = data.initiativeContext;
42
- this.buttonType = data.buttonType || ApplePayButtonType.PLAIN;
43
- this.buttonStyle = data.buttonStyle || ApplePayButtonStyle.BLACK;
44
- this.buttonLocale = data.buttonLocale || 'en-US';
45
- }
46
- get isValid() {
47
- return !!(this.merchantIdentifier &&
48
- this.displayName &&
49
- this.initiative &&
50
- this.initiativeContext);
51
- }
52
- }
53
- class ApplePayPaymentRequest {
54
- constructor(data) {
55
- this.countryCode = data.countryCode;
56
- this.currencyCode = data.currencyCode;
57
- this.merchantCapabilities = data.merchantCapabilities;
58
- this.supportedNetworks = data.supportedNetworks;
59
- this.total = data.total;
60
- this.lineItems = data.lineItems;
61
- this.shippingMethods = data.shippingMethods;
62
- this.applicationData = data.applicationData;
63
- this.supportedCountries = data.supportedCountries;
64
- }
65
- get isValid() {
66
- var _a, _b, _c, _d;
67
- return !!(this.countryCode &&
68
- this.currencyCode &&
69
- ((_a = this.merchantCapabilities) === null || _a === void 0 ? void 0 : _a.length) &&
70
- ((_b = this.supportedNetworks) === null || _b === void 0 ? void 0 : _b.length) &&
71
- ((_c = this.total) === null || _c === void 0 ? void 0 : _c.label) &&
72
- ((_d = this.total) === null || _d === void 0 ? void 0 : _d.amount));
73
- }
74
- }
75
- class ApplePayHelpers {
76
- static isApplePaySupported() {
77
- var _a;
78
- return (typeof window !== 'undefined' &&
79
- 'ApplePaySession' in window &&
80
- ((_a = window.ApplePaySession) === null || _a === void 0 ? void 0 : _a.supportsVersion(3)));
81
- }
82
- static canMakePayments() {
83
- var _a;
84
- if (!this.isApplePaySupported()) {
85
- return false;
86
- }
87
- return ((_a = window.ApplePaySession) === null || _a === void 0 ? void 0 : _a.canMakePayments()) || false;
88
- }
89
- static async canMakePaymentsWithActiveCard(merchantIdentifier) {
90
- var _a;
91
- if (!this.isApplePaySupported()) {
92
- return false;
93
- }
94
- try {
95
- return ((await ((_a = window.ApplePaySession) === null || _a === void 0 ? void 0 : _a.canMakePaymentsWithActiveCard(merchantIdentifier))) || false);
96
- }
97
- catch (error) {
98
- console.error('Error checking Apple Pay active card:', error);
99
- return false;
100
- }
101
- }
102
- static formatAmount(amount) {
103
- return (amount / 100).toFixed(2);
104
- }
105
- static parseAmount(amount) {
106
- return Math.round(parseFloat(amount) * 100);
107
- }
108
- static createLineItem(label, amount, type = 'final') {
109
- return {
110
- label,
111
- amount: this.formatAmount(amount),
112
- type,
113
- };
114
- }
115
- static getDefaultSupportedNetworks() {
116
- return ['amex', 'discover', 'masterCard', 'visa'];
117
- }
118
- static getDefaultMerchantCapabilities() {
119
- return [
120
- ApplePayMerchantCapability.SUPPORTS_3DS,
121
- ApplePayMerchantCapability.SUPPORTS_EMV,
122
- ApplePayMerchantCapability.SUPPORTS_CREDIT,
123
- ApplePayMerchantCapability.SUPPORTS_DEBIT,
124
- ];
125
- }
126
- }
127
-
128
- const isValidMerchantSession = (merchantSession) => {
129
- const requiredFields = [
130
- 'merchantSessionIdentifier',
131
- 'nonce',
132
- 'merchantIdentifier',
133
- 'epochTimestamp',
134
- 'expiresAt',
135
- ];
136
- const missingFields = requiredFields.filter((field) => !merchantSession[field]);
137
- if (missingFields.length > 0) {
138
- console.error('Missing required fields in merchant session:', missingFields);
139
- console.error('Available fields:', Object.keys(merchantSession));
140
- return false;
141
- }
142
- const now = Date.now();
143
- if (merchantSession.expiresAt && merchantSession.expiresAt < now) {
144
- console.error('Merchant session is expired:', {
145
- expiresAt: merchantSession.expiresAt,
146
- currentTime: now,
147
- expired: merchantSession.expiresAt < now,
148
- });
149
- return false;
150
- }
151
- return true;
152
- };
153
- class ApplePayService {
154
- constructor() {
155
- this.apiBaseUrl = 'https://api.justifi-staging.com';
156
- }
157
- /**
158
- * Set custom API base URL
159
- */
160
- setApiBaseUrl(url) {
161
- this.apiBaseUrl = url;
162
- }
163
- /**
164
- * Set authentication token
165
- */
166
- setAuthToken(authToken) {
167
- this.authToken = authToken;
168
- }
169
- /**
170
- * Initialize Apple Pay configuration
171
- */
172
- initialize(applePayConfig) {
173
- this.applePayConfig = new ApplePayConfig(applePayConfig);
174
- if (!this.applePayConfig.isValid) {
175
- throw new Error('Invalid Apple Pay configuration provided');
176
- }
177
- }
178
- /**
179
- * Validate merchant with Apple Pay servers via API (fixed to match original logic)
180
- */
181
- async validateMerchant(authToken, payload) {
182
- const endpoint = `${this.apiBaseUrl}/v1/apple_pay/merchant_session`;
183
- const body = payload;
184
- const response = await fetch(endpoint, {
185
- method: 'POST',
186
- headers: {
187
- 'Content-Type': 'application/json',
188
- Accept: 'application/json',
189
- Authorization: `Bearer ${authToken}`,
190
- },
191
- body: JSON.stringify(body),
192
- });
193
- if (!response.ok) {
194
- const errorData = await response.text();
195
- console.error('Backend validation failed - Raw response:', errorData);
196
- try {
197
- const jsonError = JSON.parse(errorData);
198
- console.error('Backend validation failed - Parsed error:', jsonError);
199
- }
200
- catch (parseError) {
201
- console.error('Could not parse error response as JSON:', parseError);
202
- }
203
- throw new Error(`Merchant validation failed: ${response.status}`);
204
- }
205
- const merchantSession = await response.json();
206
- return merchantSession;
207
- }
208
- /**
209
- * Process Apple Pay payment via API (fixed to match original logic)
210
- */
211
- async processPayment(authToken, payload) {
212
- const endpoint = `${this.apiBaseUrl}/apple_pay/process_token`;
213
- const body = payload;
214
- const response = await fetch(endpoint, {
215
- method: 'POST',
216
- headers: {
217
- 'Content-Type': 'application/json',
218
- Accept: 'application/json',
219
- Authorization: `Bearer ${authToken}`,
220
- },
221
- body: JSON.stringify(body),
222
- });
223
- const result = await response.json();
224
- return {
225
- success: response.ok && result.status === 'success',
226
- data: result,
227
- };
228
- }
229
- /**
230
- * Check if Apple Pay is available on this device/browser
231
- */
232
- isAvailable() {
233
- return (ApplePayHelpers.isApplePaySupported() && ApplePayHelpers.canMakePayments());
234
- }
235
- /**
236
- * Check if the user has an active card for the merchant
237
- */
238
- async canMakePaymentsWithActiveCard() {
239
- if (!this.applePayConfig) {
240
- throw new Error('Apple Pay not initialized. Call initialize() first.');
241
- }
242
- return await ApplePayHelpers.canMakePaymentsWithActiveCard(this.applePayConfig.merchantIdentifier);
243
- }
244
- /**
245
- * Start Apple Pay session
246
- */
247
- async startPaymentSession(paymentRequest) {
248
- if (!this.applePayConfig) {
249
- throw new Error('Apple Pay not initialized. Call initialize() first.');
250
- }
251
- if (!this.isAvailable()) {
252
- throw new Error('Apple Pay is not available on this device/browser');
253
- }
254
- const request = new ApplePayPaymentRequest(paymentRequest);
255
- if (!request.isValid) {
256
- throw new Error('Invalid payment request provided');
257
- }
258
- this.currentPaymentRequest = request;
259
- return new Promise((resolve, reject) => {
260
- try {
261
- this.currentSession = new window.ApplePaySession(3, request);
262
- this.setupSessionEventHandlers(resolve, reject);
263
- this.currentSession.begin();
264
- }
265
- catch (error) {
266
- reject({
267
- success: false,
268
- error: {
269
- code: 'SESSION_ERROR',
270
- message: error instanceof Error
271
- ? error.message
272
- : 'Failed to start Apple Pay session',
273
- },
274
- });
275
- }
276
- });
277
- }
278
- /**
279
- * Abort current Apple Pay session
280
- */
281
- abortPaymentSession() {
282
- if (this.currentSession) {
283
- this.currentSession.abort();
284
- this.currentSession = undefined;
285
- this.currentPaymentRequest = undefined;
286
- }
287
- }
288
- /**
289
- * Setup Apple Pay session event handlers
290
- */
291
- setupSessionEventHandlers(resolve, reject) {
292
- if (!this.currentSession ||
293
- !this.applePayConfig ||
294
- !this.currentPaymentRequest) {
295
- return;
296
- }
297
- this.currentSession.onvalidatemerchant = async (event) => {
298
- try {
299
- const validationPayload = {
300
- validation_url: event.validationURL,
301
- };
302
- if (!this.authToken) {
303
- throw new Error('Authentication token not set. Call setAuthToken() first.');
304
- }
305
- const merchantSession = await this.validateMerchant(this.authToken, validationPayload);
306
- if (merchantSession && isValidMerchantSession(merchantSession)) {
307
- try {
308
- this.currentSession.completeMerchantValidation(merchantSession);
309
- }
310
- catch (completionError) {
311
- console.error('Error calling completeMerchantValidation:', completionError);
312
- throw completionError;
313
- }
314
- }
315
- else {
316
- this.currentSession.abort();
317
- reject({
318
- success: false,
319
- error: {
320
- code: 'MERCHANT_VALIDATION_ERROR',
321
- message: 'Merchant validation failed',
322
- },
323
- });
324
- }
325
- }
326
- catch (error) {
327
- console.error('=== MERCHANT VALIDATION ERROR ===');
328
- console.error('Error during merchant validation:', error);
329
- console.error('Error stack:', error.stack);
330
- this.currentSession.abort();
331
- reject({
332
- success: false,
333
- error: {
334
- code: 'MERCHANT_VALIDATION_ERROR',
335
- message: error instanceof Error
336
- ? error.message
337
- : 'Merchant validation failed',
338
- },
339
- });
340
- }
341
- };
342
- this.currentSession.onpaymentauthorized = async (event) => {
343
- try {
344
- const payment = event.payment;
345
- const paymentPayload = Object.assign(Object.assign({}, payment.token), { product_details: {
346
- name: this.currentPaymentRequest.total.label,
347
- price: ApplePayHelpers.parseAmount(this.currentPaymentRequest.total.amount),
348
- description: this.currentPaymentRequest.total.label,
349
- } });
350
- if (!this.authToken) {
351
- throw new Error('Authentication token not set. Call setAuthToken() first.');
352
- }
353
- const paymentResult = await this.processPayment(this.authToken, paymentPayload);
354
- if (paymentResult.success) {
355
- this.currentSession.completePayment({
356
- status: ApplePaySessionStatus.STATUS_SUCCESS,
357
- });
358
- resolve({
359
- success: true,
360
- token: payment.token,
361
- });
362
- }
363
- else {
364
- console.error('PSP reported payment failure:', paymentResult.data);
365
- this.currentSession.completePayment({
366
- status: ApplePaySessionStatus.STATUS_FAILURE,
367
- });
368
- reject({
369
- success: false,
370
- error: {
371
- code: 'PAYMENT_PROCESSING_ERROR',
372
- message: 'Payment processing failed',
373
- },
374
- });
375
- }
376
- }
377
- catch (error) {
378
- console.error('=== PAYMENT PROCESSING ERROR ===');
379
- console.error('Error processing payment:', error);
380
- console.error('Error stack:', error.stack);
381
- this.currentSession.completePayment({
382
- status: ApplePaySessionStatus.STATUS_FAILURE,
383
- });
384
- reject({
385
- success: false,
386
- error: {
387
- code: 'PAYMENT_PROCESSING_ERROR',
388
- message: error instanceof Error
389
- ? error.message
390
- : 'Payment processing failed',
391
- },
392
- });
393
- }
394
- finally {
395
- this.currentSession = undefined;
396
- this.currentPaymentRequest = undefined;
397
- }
398
- };
399
- this.currentSession.onpaymentmethodselected = () => {
400
- const paymentUpdate = {
401
- newTotal: this.currentPaymentRequest.total,
402
- newLineItems: this.currentPaymentRequest.lineItems || [],
403
- };
404
- try {
405
- this.currentSession.completePaymentMethodSelection(paymentUpdate);
406
- }
407
- catch (error) {
408
- console.error('Error completing payment method selection:', error);
409
- this.currentSession.abort();
410
- }
411
- };
412
- this.currentSession.onshippingmethodselected = () => {
413
- this.currentSession.completeShippingMethodSelection({
414
- status: ApplePaySessionStatus.STATUS_SUCCESS,
415
- newTotal: this.currentPaymentRequest.total,
416
- newLineItems: this.currentPaymentRequest.lineItems || [],
417
- });
418
- };
419
- this.currentSession.oncancel = (event) => {
420
- if (event.sessionError) {
421
- switch (event.sessionError.code) {
422
- case 'unknown':
423
- console.error('Unknown error - likely merchant validation issue');
424
- console.error('This usually means:');
425
- console.error('1. Merchant certificate is invalid or expired');
426
- console.error('2. Merchant identifier mismatch');
427
- console.error('3. Backend validation endpoint issues');
428
- break;
429
- case 'invalidMerchantSession':
430
- console.error('Invalid merchant session provided');
431
- console.error('Check that the merchant session from backend is valid');
432
- break;
433
- case 'userCancel':
434
- console.error('User cancelled the payment');
435
- break;
436
- default:
437
- console.error('Other error code:', event.sessionError.code);
438
- }
439
- }
440
- this.currentSession = undefined;
441
- this.currentPaymentRequest = undefined;
442
- reject({
443
- success: false,
444
- error: {
445
- code: 'USER_CANCELLED',
446
- message: 'User cancelled the Apple Pay session',
447
- },
448
- });
449
- };
450
- if ('onerror' in this.currentSession) {
451
- this.currentSession.onerror = (error) => {
452
- console.error('=== APPLE PAY SESSION ERROR ===');
453
- console.error('Session error:', error);
454
- this.currentSession = undefined;
455
- this.currentPaymentRequest = undefined;
456
- reject({
457
- success: false,
458
- error: {
459
- code: 'SESSION_ERROR',
460
- message: 'Apple Pay session error occurred',
461
- },
462
- });
463
- };
464
- }
465
- }
466
- /**
467
- * Create a basic payment request
468
- */
469
- static createPaymentRequest(amount, label, countryCode = 'US', currencyCode = 'USD') {
470
- return {
471
- countryCode,
472
- currencyCode,
473
- merchantCapabilities: ApplePayHelpers.getDefaultMerchantCapabilities(),
474
- supportedNetworks: ApplePayHelpers.getDefaultSupportedNetworks(),
475
- total: ApplePayHelpers.createLineItem(label, amount),
476
- };
477
- }
478
- /**
479
- * Get current configuration
480
- */
481
- getApplePayConfig() {
482
- return this.applePayConfig;
483
- }
484
- }
485
-
486
- const ApplePaySkeleton = (props) => {
487
- const { isReady } = props;
488
- if (isReady) {
489
- return null;
490
- }
491
- return (h("div", { class: 'container-fluid p-0' },
492
- h("div", { class: 'row mb-3' },
493
- h("div", { class: 'col-12 align-content-center' },
494
- h(Skeleton, { height: '44px', width: '100%', styles: { borderRadius: "8px" } })))));
495
- };
496
-
497
- const ProcessingSpinner = () => (h("div", { class: 'processing-overlay' },
498
- h("div", { class: 'spinner' }),
499
- h("span", null, "Processing...")));
500
- const ApplePayButton = (props) => {
501
- const getApplePayButtonClass = () => {
502
- let classes = "apple-pay-button";
503
- switch (props.buttonStyle) {
504
- case ApplePayButtonStyle.WHITE:
505
- classes += " apple-pay-button-white";
506
- break;
507
- case ApplePayButtonStyle.WHITE_OUTLINE:
508
- classes += " apple-pay-button-white-outline";
509
- break;
510
- case ApplePayButtonStyle.BLACK:
511
- default:
512
- classes += " apple-pay-button-black";
513
- break;
514
- }
515
- switch (props.buttonType) {
516
- case ApplePayButtonType.BUY:
517
- classes += " apple-pay-button-type-buy";
518
- break;
519
- case ApplePayButtonType.DONATE:
520
- classes += " apple-pay-button-type-donate";
521
- break;
522
- case ApplePayButtonType.PLAIN:
523
- default:
524
- classes += " apple-pay-button-type-plain";
525
- break;
526
- }
527
- if (props.disabled || props.isProcessing || !props.isAvailable) {
528
- classes += " disabled";
529
- }
530
- return classes;
531
- };
532
- const getButtonStyles = () => {
533
- return {
534
- width: props.width || "200px",
535
- height: props.height || "48px",
536
- };
537
- };
538
- const handleClick = () => {
539
- if (!props.disabled &&
540
- !props.isProcessing &&
541
- props.isAvailable &&
542
- props.clickHandler) {
543
- props.clickHandler();
544
- }
545
- };
546
- return (h("div", { class: 'apple-pay-button-container' },
547
- h("button", Object.assign({ class: getApplePayButtonClass(), style: getButtonStyles(), onClick: handleClick, disabled: props.disabled || props.isProcessing || !props.isAvailable, "aria-label": 'Pay with Apple Pay', type: 'button' }, props), props.isProcessing && ProcessingSpinner()),
548
- h("style", null, `
549
- .apple-pay-button-container {
550
- display: inline-block;
551
- position: relative;
552
- }
553
-
554
- /* Apple Pay CSS classes - these are the official Apple Pay button styles */
555
- .apple-pay-button {
556
- display: inline-block;
557
- -webkit-appearance: -apple-pay-button;
558
- -apple-pay-button-type: plain; /* default */
559
- -apple-pay-button-style: black; /* default */
560
- border-radius: 8px;
561
- cursor: pointer;
562
- border: none;
563
- outline: none;
564
- transition: opacity 0.2s ease;
565
- position: relative;
566
- }
567
-
568
- /* Button styles */
569
- .apple-pay-button.apple-pay-button-black {
570
- -apple-pay-button-style: black;
571
- }
572
-
573
- .apple-pay-button.apple-pay-button-white {
574
- -apple-pay-button-style: white;
575
- }
576
-
577
- .apple-pay-button.apple-pay-button-white-outline {
578
- -apple-pay-button-style: white-outline;
579
- }
580
-
581
- /* Button types */
582
- .apple-pay-button.apple-pay-button-type-plain {
583
- -apple-pay-button-type: plain;
584
- }
585
-
586
- .apple-pay-button.apple-pay-button-type-buy {
587
- -apple-pay-button-type: buy;
588
- }
589
-
590
- .apple-pay-button.apple-pay-button-type-donate {
591
- -apple-pay-button-type: donate;
592
- }
593
-
594
- /* Hover and disabled states */
595
- .apple-pay-button:hover:not(.disabled) {
596
- opacity: 0.9;
597
- }
598
-
599
- .apple-pay-button.disabled {
600
- opacity: 0.5;
601
- cursor: not-allowed;
602
- }
603
-
604
- /* Processing overlay */
605
- .processing-overlay {
606
- position: absolute;
607
- top: 0;
608
- left: 0;
609
- right: 0;
610
- bottom: 0;
611
- display: flex;
612
- align-items: center;
613
- justify-content: center;
614
- gap: 8px;
615
- background: rgba(0, 0, 0, 0.8);
616
- color: white;
617
- border-radius: 8px;
618
- font-size: 14px;
619
- font-weight: 500;
620
- }
621
-
622
- .spinner {
623
- width: 16px;
624
- height: 16px;
625
- border: 2px solid rgba(255, 255, 255, 0.3);
626
- border-top: 2px solid #fff;
627
- border-radius: 50%;
628
- animation: spin 1s linear infinite;
629
- }
630
-
631
- @keyframes spin {
632
- 0% { transform: rotate(0deg); }
633
- 100% { transform: rotate(360deg); }
634
- }
635
-
636
- /* Responsive design */
637
- @media (max-width: 480px) {
638
- .apple-pay-button {
639
- width: 100% !important;
640
- min-width: 200px;
641
- }
642
- }
643
- `)));
644
- };
645
-
646
- const ApplePay = /*@__PURE__*/ proxyCustomElement(class ApplePay extends HTMLElement {
647
- constructor() {
648
- super();
649
- this.__registerHost();
650
- this.__attachShadow();
651
- this.applePayStarted = createEvent(this, "applePayStarted", 7);
652
- this.applePayCompleted = createEvent(this, "applePayCompleted", 7);
653
- this.applePayCancelled = createEvent(this, "applePayCancelled", 7);
654
- this.applePayError = createEvent(this, "applePayError", 7);
655
- this.countryCode = "US";
656
- this.merchantIdentifier = "merchant.com.justifi.checkout";
657
- this.merchantDisplayName = "JustiFi Checkout";
658
- this.initiativeContext = "checkout.justifi.tech";
659
- this.apiBaseUrl = "https://api.justifi-staging.com";
660
- this.buttonType = ApplePayButtonType.PLAIN;
661
- this.buttonStyle = ApplePayButtonStyle.BLACK;
662
- this.disabled = false;
663
- this.showSkeleton = true;
664
- this.isLoading = true;
665
- this.isProcessing = false;
666
- this.isAvailable = false;
667
- this.canMakePayments = false;
668
- this.error = null;
669
- this.handleApplePayClick = async () => {
670
- var _a;
671
- if (this.isProcessing || this.disabled || !this.isAvailable) {
672
- return;
673
- }
674
- try {
675
- this.isProcessing = true;
676
- this.error = null;
677
- this.applePayStarted.emit();
678
- const paymentRequest = {
679
- countryCode: this.countryCode,
680
- currencyCode: checkoutStore.paymentCurrency,
681
- merchantCapabilities: ApplePayHelpers.getDefaultMerchantCapabilities(),
682
- supportedNetworks: ApplePayHelpers.getDefaultSupportedNetworks(),
683
- total: ApplePayHelpers.createLineItem(checkoutStore.paymentDescription, checkoutStore.paymentAmount),
684
- };
685
- const result = await this.applePayService.startPaymentSession(paymentRequest);
686
- if (result.success) {
687
- this.applePayCompleted.emit({
688
- success: true,
689
- token: result.token,
690
- });
691
- }
692
- else {
693
- this.applePayCompleted.emit({
694
- success: false,
695
- error: result.error,
696
- });
697
- this.applePayError.emit({
698
- error: ((_a = result.error) === null || _a === void 0 ? void 0 : _a.message) || "Payment failed",
699
- });
700
- }
701
- }
702
- catch (error) {
703
- console.error("Apple Pay payment error:", error);
704
- const errorMessage = error instanceof Error ? error.message : "Payment failed";
705
- this.error = errorMessage;
706
- this.applePayError.emit({ error: errorMessage });
707
- this.applePayCompleted.emit({
708
- success: false,
709
- error: errorMessage,
710
- });
711
- }
712
- finally {
713
- this.isProcessing = false;
714
- }
715
- };
716
- }
717
- componentWillLoad() {
718
- this.applePayService = new ApplePayService();
719
- this.applePayService.setApiBaseUrl(this.apiBaseUrl);
720
- this.applePayService.setAuthToken(checkoutStore.authToken);
721
- this.initializeApplePay();
722
- }
723
- componentDidLoad() {
724
- onChange('paymentAmount', () => {
725
- this.initializeApplePay();
726
- });
727
- onChange('authToken', () => {
728
- if (this.applePayService) {
729
- this.applePayService.setAuthToken(checkoutStore.authToken);
730
- }
731
- });
732
- }
733
- watchPropsChange() {
734
- if (this.applePayService) {
735
- this.applePayService.setApiBaseUrl(this.apiBaseUrl);
736
- this.applePayService.setAuthToken(checkoutStore.authToken);
737
- }
738
- this.initializeApplePay();
739
- }
740
- async initializeApplePay() {
741
- try {
742
- this.isLoading = true;
743
- this.error = null;
744
- if (!checkoutStore.paymentAmount) {
745
- this.error = "Missing required Apple Pay configuration";
746
- this.isLoading = false;
747
- return;
748
- }
749
- this.isAvailable = ApplePayHelpers.isApplePaySupported();
750
- this.canMakePayments = ApplePayHelpers.canMakePayments();
751
- if (!this.isAvailable) {
752
- this.error = "Apple Pay is not supported on this device";
753
- this.isLoading = false;
754
- return;
755
- }
756
- if (!this.canMakePayments) {
757
- this.error = "Apple Pay is not available";
758
- this.isLoading = false;
759
- return;
760
- }
761
- const applePayConfig = {
762
- merchantIdentifier: this.merchantIdentifier,
763
- displayName: this.merchantDisplayName,
764
- initiative: "web",
765
- initiativeContext: this.initiativeContext,
766
- buttonType: this.buttonType,
767
- buttonStyle: this.buttonStyle,
768
- };
769
- this.applePayService.initialize(applePayConfig);
770
- const hasActiveCard = await this.applePayService.canMakePaymentsWithActiveCard();
771
- if (!hasActiveCard) {
772
- console.warn("No Apple Pay cards available, but continuing...");
773
- }
774
- }
775
- catch (error) {
776
- console.error("Apple Pay initialization error:", error);
777
- this.error =
778
- error instanceof Error
779
- ? error.message
780
- : "Failed to initialize Apple Pay";
781
- }
782
- finally {
783
- this.isLoading = false;
784
- }
785
- }
786
- async isSupported() {
787
- return this.isAvailable && this.canMakePayments;
788
- }
789
- async getPaymentMethods() {
790
- if (!this.isAvailable) {
791
- return [];
792
- }
793
- return ApplePayHelpers.getDefaultSupportedNetworks();
794
- }
795
- async abort() {
796
- this.applePayService.abortPaymentSession();
797
- this.isProcessing = false;
798
- this.applePayCancelled.emit();
799
- }
800
- render() {
801
- const isReady = !this.isLoading &&
802
- this.isAvailable &&
803
- this.canMakePayments &&
804
- !this.error;
805
- return (h(StyledHost, { key: '47b08ec084abe436b837e8b7f3c05b0517739112' }, h("div", { key: '4d3a0f847699541030c8aa2e53205a1a5f134472', class: 'apple-pay-container' }, h(ApplePaySkeleton, { key: '36ac17a7bfd0465868030dfc6cdcbb57403cb4ee', isReady: isReady }), !this.isLoading && this.error && (h("div", { key: 'd3f821257b878e869d45a6f705537860b2eaeb0b', class: 'apple-pay-error', role: 'alert' }, h("span", { key: '0db06ceb58b1976aa4279e4ed17418307f9e5e9d', class: 'error-icon' }, "\u26A0\uFE0F"), h("span", { key: 'ed273caaa60fd3b065d36f9cc38c65886abfffa0', class: 'error-message' }, this.error))), !this.isLoading && !this.error && !this.isAvailable && (h("div", { key: '39ba962ff187cca4dd2e688b4d3be6f2c9a8a379', class: 'apple-pay-unavailable' }, h("span", { key: 'd1d52f8ad8abe3532195d228a4977a36c91c931f', class: 'unavailable-message' }, "Apple Pay is not available on this device"))), !this.isLoading &&
806
- !this.error &&
807
- this.isAvailable &&
808
- this.canMakePayments && (h(ApplePayButton, { key: 'a60762c319dd5752e4d10c3ca94e1a30e798f9df', buttonType: this.buttonType, buttonStyle: this.buttonStyle, disabled: this.disabled, isProcessing: this.isProcessing, isAvailable: this.isAvailable, clickHandler: this.handleApplePayClick }))), h("style", { key: '9a0656ac9092bf5abf3ef6b6250fc60b9ec892c3' }, `
809
- .apple-pay-container {
810
- width: 100%;
811
- }
812
-
813
- .apple-pay-error {
814
- display: flex;
815
- align-items: center;
816
- gap: 8px;
817
- padding: 12px;
818
- background: #fef2f2;
819
- border: 1px solid #fecaca;
820
- border-radius: 8px;
821
- color: #dc2626;
822
- font-size: 14px;
823
- }
824
-
825
- .apple-pay-unavailable {
826
- display: flex;
827
- align-items: center;
828
- justify-content: center;
829
- padding: 12px;
830
- background: #f9fafb;
831
- border: 1px solid #e5e7eb;
832
- border-radius: 8px;
833
- color: #6b7280;
834
- font-size: 14px;
835
- }
836
-
837
- .error-icon {
838
- font-size: 16px;
839
- }
840
- `)));
841
- }
842
- static get watchers() { return {
843
- "merchantIdentifier": ["watchPropsChange"],
844
- "apiBaseUrl": ["watchPropsChange"],
845
- "buttonType": ["watchPropsChange"],
846
- "buttonStyle": ["watchPropsChange"],
847
- "disabled": ["watchPropsChange"]
848
- }; }
849
- }, [257, "justifi-apple-pay", {
850
- "countryCode": [1, "country-code"],
851
- "merchantIdentifier": [1, "merchant-identifier"],
852
- "merchantDisplayName": [1, "merchant-display-name"],
853
- "initiativeContext": [1, "initiative-context"],
854
- "apiBaseUrl": [1, "api-base-url"],
855
- "buttonType": [1, "button-type"],
856
- "buttonStyle": [1, "button-style"],
857
- "disabled": [4],
858
- "showSkeleton": [4, "show-skeleton"],
859
- "isLoading": [32],
860
- "isProcessing": [32],
861
- "isAvailable": [32],
862
- "canMakePayments": [32],
863
- "error": [32],
864
- "isSupported": [64],
865
- "getPaymentMethods": [64],
866
- "abort": [64]
867
- }, undefined, {
868
- "merchantIdentifier": ["watchPropsChange"],
869
- "apiBaseUrl": ["watchPropsChange"],
870
- "buttonType": ["watchPropsChange"],
871
- "buttonStyle": ["watchPropsChange"],
872
- "disabled": ["watchPropsChange"]
873
- }]);
874
- function defineCustomElement$1() {
875
- if (typeof customElements === "undefined") {
876
- return;
877
- }
878
- const components = ["justifi-apple-pay"];
879
- components.forEach(tagName => { switch (tagName) {
880
- case "justifi-apple-pay":
881
- if (!customElements.get(tagName)) {
882
- customElements.define(tagName, ApplePay);
883
- }
884
- break;
885
- } });
886
- }
887
- defineCustomElement$1();
888
-
889
- const JustifiApplePay = ApplePay;
890
- const defineCustomElement = defineCustomElement$1;
891
-
892
- export { JustifiApplePay, defineCustomElement };