@justifi/webcomponents 6.5.1-rc.2 → 6.5.1-rc.4

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 (520) hide show
  1. package/dist/cjs/{GooglePay-HXBAmTgL.js → Refund-Blquw3jZ.js} +0 -415
  2. package/dist/cjs/bank-account-document-form-inputs_6.cjs.entry.js +4 -5
  3. package/dist/cjs/bank-account-form.cjs.entry.js +2 -2
  4. package/dist/cjs/{business.service-DMzf08nC.js → business.service-DrBmfEbR.js} +1 -1
  5. package/dist/cjs/card-form.cjs.entry.js +2 -2
  6. package/dist/cjs/{check-pkg-version-Bw6Rz_E3.js → check-pkg-version-Bj0XkWnL.js} +2 -2
  7. package/dist/cjs/{checkout.service-CHNHEsrp.js → checkout.service-BEU6CI0t.js} +1 -1
  8. package/dist/cjs/checkout.store-BA6h-dp2.js +107 -0
  9. package/dist/cjs/checkouts-list-core.cjs.entry.js +2 -3
  10. package/dist/cjs/custom-popper.cjs.entry.js +2 -2
  11. package/dist/cjs/{dispute.service-B63kcFkU.js → dispute.service-c0CZxPpe.js} +1 -1
  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_3.cjs.entry.js +2 -2
  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-payment-details-BN139jp0.js → get-payment-details-D8UQRtX1.js} +2 -2
  21. package/dist/cjs/{get-subaccounts-IgHJX5J4.js → get-subaccounts-fKcKqvrx.js} +2 -2
  22. package/dist/cjs/gross-payment-chart-core.cjs.entry.js +1 -1
  23. package/dist/cjs/hidden-input_2.cjs.entry.js +5 -5
  24. package/dist/cjs/{index-CajjbB9t.js → index-C2ITzalN.js} +0 -1
  25. package/dist/cjs/index.cjs.js +1 -1
  26. package/dist/cjs/internal-tokenize-payment-method_7.cjs.entry.js +23 -22
  27. package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +5 -6
  28. package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +2 -3
  29. package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +8 -8
  30. package/dist/cjs/{justifi-apple-pay_8.cjs.entry.js → justifi-apple-pay_7.cjs.entry.js} +253 -899
  31. package/dist/cjs/justifi-bank-account-billing-form-simple_3.cjs.entry.js +2 -2
  32. package/dist/cjs/justifi-business-details.cjs.entry.js +4 -5
  33. package/dist/cjs/justifi-business-form.cjs.entry.js +4 -5
  34. package/dist/cjs/justifi-checkout.cjs.entry.js +15 -14
  35. package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +9 -10
  36. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +7 -8
  37. package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +1 -1
  38. package/dist/cjs/justifi-dispute-management.cjs.entry.js +5 -6
  39. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +8 -9
  40. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +3 -4
  41. package/dist/cjs/justifi-order-terminals.cjs.entry.js +9 -10
  42. package/dist/cjs/justifi-owner-form_3.cjs.entry.js +2 -3
  43. package/dist/cjs/justifi-payment-details.cjs.entry.js +5 -6
  44. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +4 -5
  45. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +6 -7
  46. package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +2 -2
  47. package/dist/cjs/justifi-payments-list.cjs.entry.js +6 -7
  48. package/dist/cjs/justifi-payout-details.cjs.entry.js +5 -6
  49. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +6 -7
  50. package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +2 -2
  51. package/dist/cjs/justifi-payouts-list.cjs.entry.js +7 -8
  52. package/dist/cjs/justifi-refund-payment.cjs.entry.js +9 -10
  53. package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +1 -1
  54. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +8 -7
  55. package/dist/cjs/justifi-skeleton.cjs.entry.js +1 -1
  56. package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +11 -12
  57. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +6 -7
  58. package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +7 -8
  59. package/dist/cjs/justifi-terminals-list.cjs.entry.js +7 -8
  60. package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +1 -1
  61. package/dist/cjs/loader.cjs.js +1 -1
  62. package/dist/cjs/{package--UMqvxMQ.js → package-Dptg-P5y.js} +1 -1
  63. package/dist/cjs/pagination-menu.cjs.entry.js +3 -3
  64. package/dist/cjs/payment-details-core.cjs.entry.js +10 -11
  65. package/dist/cjs/payment-method-option.cjs.entry.js +1 -1
  66. package/dist/cjs/{payment.service-eOZc1Qay.js → payment.service-DXbR13Kq.js} +1 -1
  67. package/dist/cjs/payments-list-core.cjs.entry.js +2 -3
  68. package/dist/cjs/payout-details-core.cjs.entry.js +3 -3
  69. package/dist/cjs/{payout.service-QVl5N-UV.js → payout.service-D0U6kzXJ.js} +1 -1
  70. package/dist/cjs/payouts-list-core.cjs.entry.js +2 -3
  71. package/dist/cjs/table-filters-menu.cjs.entry.js +1 -1
  72. package/dist/cjs/terminal-orders-list-core.cjs.entry.js +3 -4
  73. package/dist/cjs/{terminal-orders-table-g2fwrh2P.js → terminal-orders-table-BByfBAEK.js} +3 -3
  74. package/dist/cjs/terminal-quantity-selector.cjs.entry.js +1 -1
  75. package/dist/cjs/{terminal.service-BuSFyt0j.js → terminal.service-BqXeiERV.js} +1 -1
  76. package/dist/cjs/terminals-list-core.cjs.entry.js +2 -3
  77. package/dist/cjs/webcomponents.cjs.js +1 -1
  78. package/dist/collection/api/index.js +0 -2
  79. package/dist/collection/collection-manifest.json +0 -1
  80. package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +2 -2
  81. package/dist/collection/components/checkout/card-form/card-form.js +2 -2
  82. package/dist/collection/components/checkout/checkout.js +2 -2
  83. package/dist/collection/components/checkout/save-new-payment-method.js +1 -1
  84. package/dist/collection/components/checkout/saved-payment-method.js +1 -1
  85. package/dist/collection/components/checkouts-list/checkouts-list-core.js +1 -1
  86. package/dist/collection/components/checkouts-list/checkouts-list-filters.js +1 -1
  87. package/dist/collection/components/checkouts-list/checkouts-list.js +1 -1
  88. package/dist/collection/components/dispute-management/dispute-management-core.js +1 -1
  89. package/dist/collection/components/dispute-management/dispute-management.js +1 -1
  90. package/dist/collection/components/dispute-management/dispute-notification.js +2 -2
  91. package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +1 -1
  92. package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +1 -1
  93. package/dist/collection/components/dispute-management/dispute-response/customer-details.js +1 -1
  94. package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
  95. package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +1 -1
  96. package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +1 -1
  97. package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +1 -1
  98. package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +1 -1
  99. package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +1 -1
  100. package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +1 -1
  101. package/dist/collection/components/filters/table-filters-menu.js +1 -1
  102. package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +1 -1
  103. package/dist/collection/components/modular-checkout/ModularCheckout.js +0 -1
  104. package/dist/collection/components/modular-checkout/modular-checkout.js +6 -44
  105. package/dist/collection/components/modular-checkout/sub-components/bank-account-billing-form-simple.js +1 -1
  106. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +2 -2
  107. package/dist/collection/components/modular-checkout/sub-components/card-billing-form-simple.js +1 -1
  108. package/dist/collection/components/modular-checkout/sub-components/card-form.js +2 -2
  109. package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +1 -1
  110. package/dist/collection/components/modular-checkout/sub-components/summary.js +1 -1
  111. package/dist/collection/components/order-terminals/order-terminals.js +1 -1
  112. package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +1 -1
  113. package/dist/collection/components/payment-details/payment-details-core.js +8 -8
  114. package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +1 -1
  115. package/dist/collection/components/payments-list/payments-list-core.js +1 -1
  116. package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
  117. package/dist/collection/components/payments-list/payments-list.js +1 -1
  118. package/dist/collection/components/payout-details/payout-details-core.js +3 -3
  119. package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +1 -1
  120. package/dist/collection/components/payouts-list/payouts-list-core.js +1 -1
  121. package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
  122. package/dist/collection/components/payouts-list/payouts-list.js +1 -1
  123. package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +1 -1
  124. package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
  125. package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +1 -1
  126. package/dist/collection/components/terminals-list/terminals-list-core.js +1 -1
  127. package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
  128. package/dist/collection/components/terminals-list/terminals-list.js +1 -1
  129. package/dist/collection/components/tokenize-payment-method/internal-tokenize-payment-method.js +1 -1
  130. package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +1 -1
  131. package/dist/collection/store/checkout.store.js +0 -4
  132. package/dist/collection/ui-components/custom-popper/custom-popper.js +2 -2
  133. package/dist/collection/ui-components/form/form-control-checkbox.js +2 -2
  134. package/dist/collection/ui-components/form/form-control-date.js +2 -2
  135. package/dist/collection/ui-components/form/form-control-file-v2.js +1 -1
  136. package/dist/collection/ui-components/form/form-control-file.js +2 -2
  137. package/dist/collection/ui-components/form/form-control-monetary.js +2 -2
  138. package/dist/collection/ui-components/form/form-control-number-masked.js +2 -2
  139. package/dist/collection/ui-components/form/form-control-number.js +2 -2
  140. package/dist/collection/ui-components/form/form-control-radio.js +2 -2
  141. package/dist/collection/ui-components/form/form-control-select.js +2 -2
  142. package/dist/collection/ui-components/form/form-control-text.js +2 -2
  143. package/dist/collection/ui-components/form/form-control-textarea.js +2 -2
  144. package/dist/collection/ui-components/form/hidden-input.js +1 -1
  145. package/dist/collection/ui-components/form/iframe-input.js +3 -3
  146. package/dist/collection/ui-components/pagination-menu/pagination-menu.js +3 -3
  147. package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +1 -1
  148. package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +1 -1
  149. package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +1 -1
  150. package/dist/docs.json +3 -540
  151. package/dist/esm/{GooglePay-9bPcqGZ9.js → Refund-BugCdfRo.js} +1 -405
  152. package/dist/esm/bank-account-document-form-inputs_6.entry.js +3 -4
  153. package/dist/esm/bank-account-form.entry.js +2 -2
  154. package/dist/esm/{business.service-2j91Emgq.js → business.service-pWcc3kfX.js} +1 -1
  155. package/dist/esm/card-form.entry.js +2 -2
  156. package/dist/esm/{check-pkg-version-2BU_KPHv.js → check-pkg-version-D6a-vvrO.js} +2 -2
  157. package/dist/esm/{checkout.service-D-dEMyXF.js → checkout.service-B4xSV2-X.js} +1 -1
  158. package/dist/esm/checkout.store-CaS_htQd.js +101 -0
  159. package/dist/esm/checkouts-list-core.entry.js +2 -3
  160. package/dist/esm/custom-popper.entry.js +2 -2
  161. package/dist/esm/{dispute.service-DPumDIuV.js → dispute.service-3Kbbh1J9.js} +1 -1
  162. package/dist/esm/form-control-checkbox.entry.js +2 -2
  163. package/dist/esm/form-control-date.entry.js +2 -2
  164. package/dist/esm/form-control-file-v2_2.entry.js +3 -3
  165. package/dist/esm/form-control-monetary.entry.js +2 -2
  166. package/dist/esm/form-control-number-masked_3.entry.js +2 -2
  167. package/dist/esm/form-control-number.entry.js +2 -2
  168. package/dist/esm/form-control-radio.entry.js +2 -2
  169. package/dist/esm/form-control-select_3.entry.js +4 -4
  170. package/dist/esm/{get-payment-details-CD_K6FQ3.js → get-payment-details-CakzKvOr.js} +1 -1
  171. package/dist/esm/{get-subaccounts-D1eF6c0B.js → get-subaccounts-Cw1Adtmo.js} +1 -1
  172. package/dist/esm/gross-payment-chart-core.entry.js +1 -1
  173. package/dist/esm/hidden-input_2.entry.js +5 -5
  174. package/dist/esm/{index-DkoufM1t.js → index-DCIW8z1f.js} +0 -1
  175. package/dist/esm/index.js +1 -1
  176. package/dist/esm/internal-tokenize-payment-method_7.entry.js +12 -11
  177. package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +1 -2
  178. package/dist/esm/justifi-additional-questions-form-step_9.entry.js +2 -3
  179. package/dist/esm/justifi-additional-statement_8.entry.js +8 -8
  180. package/dist/esm/{justifi-apple-pay_8.entry.js → justifi-apple-pay_7.entry.js} +137 -782
  181. package/dist/esm/justifi-bank-account-billing-form-simple_3.entry.js +2 -2
  182. package/dist/esm/justifi-business-details.entry.js +4 -5
  183. package/dist/esm/justifi-business-form.entry.js +4 -5
  184. package/dist/esm/justifi-checkout.entry.js +8 -7
  185. package/dist/esm/justifi-checkouts-list-filters.entry.js +2 -3
  186. package/dist/esm/justifi-checkouts-list.entry.js +6 -7
  187. package/dist/esm/justifi-dispute-management-core.entry.js +1 -1
  188. package/dist/esm/justifi-dispute-management.entry.js +5 -6
  189. package/dist/esm/justifi-dispute-notification_3.entry.js +8 -9
  190. package/dist/esm/justifi-gross-payment-chart.entry.js +3 -4
  191. package/dist/esm/justifi-order-terminals.entry.js +6 -7
  192. package/dist/esm/justifi-owner-form_3.entry.js +2 -3
  193. package/dist/esm/justifi-payment-details.entry.js +5 -6
  194. package/dist/esm/justifi-payment-provisioning.entry.js +4 -5
  195. package/dist/esm/justifi-payment-transactions-list.entry.js +5 -6
  196. package/dist/esm/justifi-payments-list-filters.entry.js +2 -2
  197. package/dist/esm/justifi-payments-list.entry.js +5 -6
  198. package/dist/esm/justifi-payout-details.entry.js +4 -5
  199. package/dist/esm/justifi-payout-transactions-list.entry.js +5 -6
  200. package/dist/esm/justifi-payouts-list-filters.entry.js +2 -2
  201. package/dist/esm/justifi-payouts-list.entry.js +6 -7
  202. package/dist/esm/justifi-refund-payment.entry.js +5 -6
  203. package/dist/esm/justifi-saved-payment-method.entry.js +1 -1
  204. package/dist/esm/justifi-season-interruption-insurance.entry.js +5 -4
  205. package/dist/esm/justifi-skeleton.entry.js +1 -1
  206. package/dist/esm/justifi-terminal-orders-list-filters.entry.js +3 -4
  207. package/dist/esm/justifi-terminal-orders-list.entry.js +5 -6
  208. package/dist/esm/justifi-terminals-list-filters.entry.js +2 -3
  209. package/dist/esm/justifi-terminals-list.entry.js +6 -7
  210. package/dist/esm/justifi-tokenize-payment-method.entry.js +1 -1
  211. package/dist/esm/loader.js +1 -1
  212. package/dist/esm/{package-Bx3wyDU2.js → package-czPIvHxt.js} +1 -1
  213. package/dist/esm/pagination-menu.entry.js +3 -3
  214. package/dist/esm/payment-details-core.entry.js +9 -10
  215. package/dist/esm/payment-method-option.entry.js +1 -1
  216. package/dist/esm/{payment.service-BreQSu6J.js → payment.service-nExZY_sU.js} +1 -1
  217. package/dist/esm/payments-list-core.entry.js +2 -3
  218. package/dist/esm/payout-details-core.entry.js +3 -3
  219. package/dist/esm/{payout.service-DuqRe6oq.js → payout.service-B9-JQqU6.js} +1 -1
  220. package/dist/esm/payouts-list-core.entry.js +2 -3
  221. package/dist/esm/table-filters-menu.entry.js +1 -1
  222. package/dist/esm/terminal-orders-list-core.entry.js +3 -4
  223. package/dist/esm/{terminal-orders-table-DSo5x2D7.js → terminal-orders-table-DsrpmD9F.js} +1 -1
  224. package/dist/esm/terminal-quantity-selector.entry.js +1 -1
  225. package/dist/esm/{terminal.service-CkzrYIA_.js → terminal.service-DvFiKAKV.js} +1 -1
  226. package/dist/esm/terminals-list-core.entry.js +2 -3
  227. package/dist/esm/webcomponents.js +1 -1
  228. package/dist/module/Analytics.js +0 -2
  229. package/dist/module/ModularCheckout.js +0 -1
  230. package/dist/module/additional-statement.js +1 -1
  231. package/dist/module/apple-pay.js +120 -1
  232. package/dist/module/bank-account-billing-form-simple.js +1 -1
  233. package/dist/module/bank-account-document-inputs.js +0 -2
  234. package/dist/module/bank-account-form.js +2 -2
  235. package/dist/module/bank-account.js +2 -2
  236. package/dist/module/business-bank-account-form-step-core.js +0 -2
  237. package/dist/module/business-bank-account-form-step.js +0 -2
  238. package/dist/module/business-terms-conditions-form-step.js +0 -2
  239. package/dist/module/business.service.js +0 -2
  240. package/dist/module/cancellation-policy.js +1 -1
  241. package/dist/module/card-billing-form-simple.js +1 -1
  242. package/dist/module/card-form.js +2 -2
  243. package/dist/module/card-form2.js +2 -2
  244. package/dist/module/checkout.service.js +0 -2
  245. package/dist/module/checkout.store.js +0 -4
  246. package/dist/module/checkouts-list-core2.js +1 -3
  247. package/dist/module/custom-popper2.js +2 -2
  248. package/dist/module/customer-details.js +1 -1
  249. package/dist/module/dispute-management-core.js +1 -1
  250. package/dist/module/dispute-notification.js +2 -2
  251. package/dist/module/dispute-response-actions.js +0 -2
  252. package/dist/module/dispute-response-core.js +1 -1
  253. package/dist/module/dispute-response.js +1 -1
  254. package/dist/module/duplicate-charge.js +1 -1
  255. package/dist/module/electronic-evidence.js +1 -1
  256. package/dist/module/form-control-checkbox2.js +2 -2
  257. package/dist/module/form-control-date2.js +2 -2
  258. package/dist/module/form-control-file-v22.js +1 -1
  259. package/dist/module/form-control-file2.js +2 -2
  260. package/dist/module/form-control-monetary2.js +2 -2
  261. package/dist/module/form-control-number-masked2.js +2 -2
  262. package/dist/module/form-control-number.js +2 -2
  263. package/dist/module/form-control-radio2.js +2 -2
  264. package/dist/module/form-control-select2.js +2 -2
  265. package/dist/module/form-control-text2.js +2 -2
  266. package/dist/module/form-control-textarea2.js +2 -2
  267. package/dist/module/get-payment-details.js +0 -2
  268. package/dist/module/get-subaccounts.js +0 -2
  269. package/dist/module/gross-payment-chart-core2.js +1 -1
  270. package/dist/module/hidden-input2.js +1 -1
  271. package/dist/module/iframe-input2.js +3 -3
  272. package/dist/module/internal-tokenize-payment-method2.js +1 -3
  273. package/dist/module/justifi-business-form.js +0 -2
  274. package/dist/module/justifi-button2.js +1 -1
  275. package/dist/module/justifi-checkout.js +40 -46
  276. package/dist/module/justifi-checkouts-list-filters.js +1 -3
  277. package/dist/module/justifi-checkouts-list.js +1 -3
  278. package/dist/module/justifi-dispute-management.js +1 -1
  279. package/dist/module/justifi-gross-payment-chart.js +0 -2
  280. package/dist/module/justifi-header2.js +1 -1
  281. package/dist/module/justifi-order-terminals.js +1 -3
  282. package/dist/module/justifi-payment-provisioning.js +0 -2
  283. package/dist/module/justifi-payment-transactions-list.js +1 -3
  284. package/dist/module/justifi-payments-list-filters.js +2 -2
  285. package/dist/module/justifi-payments-list.js +1 -3
  286. package/dist/module/justifi-payout-details.js +0 -2
  287. package/dist/module/justifi-payout-transactions-list.js +1 -3
  288. package/dist/module/justifi-payouts-list-filters.js +2 -2
  289. package/dist/module/justifi-payouts-list.js +1 -3
  290. package/dist/module/justifi-refund-payment.js +0 -2
  291. package/dist/module/justifi-saved-payment-method.js +1 -1
  292. package/dist/module/justifi-season-interruption-insurance.js +0 -2
  293. package/dist/module/justifi-skeleton.js +1 -1
  294. package/dist/module/justifi-terminal-orders-list-filters.js +2 -4
  295. package/dist/module/justifi-terminal-orders-list.js +1 -3
  296. package/dist/module/justifi-terminals-list-filters.js +1 -3
  297. package/dist/module/justifi-terminals-list.js +1 -3
  298. package/dist/module/justifi-tokenize-payment-method.js +1 -1
  299. package/dist/module/modular-checkout.js +6 -46
  300. package/dist/module/package.js +1 -1
  301. package/dist/module/pagination-menu2.js +3 -3
  302. package/dist/module/payment-details-core2.js +8 -10
  303. package/dist/module/payment-method-option.js +1 -1
  304. package/dist/module/payment.service.js +0 -2
  305. package/dist/module/payments-list-core2.js +1 -3
  306. package/dist/module/payout-details-core2.js +3 -3
  307. package/dist/module/payout.service.js +0 -2
  308. package/dist/module/payouts-list-core2.js +1 -3
  309. package/dist/module/plaid.service.js +0 -2
  310. package/dist/module/product-or-service.js +1 -1
  311. package/dist/module/refund-policy.js +1 -1
  312. package/dist/module/save-new-payment-method.js +1 -1
  313. package/dist/module/shipping-details.js +1 -1
  314. package/dist/module/summary.js +1 -1
  315. package/dist/module/table-filters-menu2.js +1 -1
  316. package/dist/module/terminal-orders-list-core2.js +1 -3
  317. package/dist/module/terminal-quantity-selector2.js +1 -1
  318. package/dist/module/terminal.service.js +0 -2
  319. package/dist/module/terminals-list-core2.js +1 -3
  320. package/dist/types/api/Checkout.d.ts +0 -2
  321. package/dist/types/api/index.d.ts +0 -2
  322. package/dist/types/components/checkout/checkout.d.ts +0 -1
  323. package/dist/types/components/modular-checkout/ModularCheckout.d.ts +1 -2
  324. package/dist/types/components/modular-checkout/modular-checkout.d.ts +0 -5
  325. package/dist/types/components.d.ts +0 -140
  326. package/dist/types/store/checkout.store.d.ts +0 -1
  327. package/dist/webcomponents/index.esm.js +1 -1
  328. package/dist/webcomponents/{p-a22d1078.entry.js → p-0082f428.entry.js} +1 -1
  329. package/dist/webcomponents/p-0b760c4f.entry.js +1 -0
  330. package/dist/webcomponents/{p-19dabeab.entry.js → p-1193a1ac.entry.js} +1 -1
  331. package/dist/webcomponents/p-159d8ae7.entry.js +1 -0
  332. package/dist/webcomponents/{p-86111a0a.entry.js → p-1edec396.entry.js} +1 -1
  333. package/dist/webcomponents/p-21c060ce.entry.js +1 -0
  334. package/dist/webcomponents/p-26e95adb.entry.js +1 -0
  335. package/dist/webcomponents/p-2bd821a8.entry.js +1 -0
  336. package/dist/webcomponents/p-306c7c33.entry.js +1 -0
  337. package/dist/webcomponents/p-30f61f44.entry.js +1 -0
  338. package/dist/webcomponents/p-34aa9298.entry.js +1 -0
  339. package/dist/webcomponents/p-38ff97ea.entry.js +1 -0
  340. package/dist/webcomponents/p-3aaedf9d.entry.js +1 -0
  341. package/dist/webcomponents/p-3c38cec5.entry.js +1 -0
  342. package/dist/webcomponents/p-3c40eefe.entry.js +1 -0
  343. package/dist/webcomponents/p-44a94dac.entry.js +1 -0
  344. package/dist/webcomponents/p-4dcbc0af.entry.js +1 -0
  345. package/dist/webcomponents/{p-f2650bfc.entry.js → p-4e23116c.entry.js} +1 -1
  346. package/dist/webcomponents/p-50a4d4c4.entry.js +1 -0
  347. package/dist/webcomponents/{p-3bacf834.entry.js → p-58ae4f9e.entry.js} +1 -1
  348. package/dist/webcomponents/p-5981869a.entry.js +1 -0
  349. package/dist/webcomponents/p-5c8c88c6.entry.js +1 -0
  350. package/dist/webcomponents/p-614b0adc.entry.js +1 -0
  351. package/dist/webcomponents/p-7081eb35.entry.js +1 -0
  352. package/dist/webcomponents/p-7218c312.entry.js +1 -0
  353. package/dist/webcomponents/p-75f3161c.entry.js +1 -0
  354. package/dist/webcomponents/p-7661c41a.entry.js +1 -0
  355. package/dist/webcomponents/p-77b76007.entry.js +1 -0
  356. package/dist/webcomponents/p-77bd4fb0.entry.js +1 -0
  357. package/dist/webcomponents/p-92a43706.entry.js +1 -0
  358. package/dist/webcomponents/p-98b8028e.entry.js +1 -0
  359. package/dist/webcomponents/p-9d67209d.entry.js +1 -0
  360. package/dist/webcomponents/p-9ef4288b.entry.js +1 -0
  361. package/dist/webcomponents/{p-CVhnuewz.js → p-B4ZUYyNh.js} +1 -1
  362. package/dist/webcomponents/{p-Dy5btfGV.js → p-BCPutgAi.js} +1 -1
  363. package/dist/webcomponents/p-BojLBYsY.js +1 -0
  364. package/dist/webcomponents/p-BpaE8q5f.js +1 -0
  365. package/dist/webcomponents/{p-t8p0WAW4.js → p-C8QOezo8.js} +1 -1
  366. package/dist/webcomponents/{p-C01zp4xw.js → p-CApezhx9.js} +1 -1
  367. package/dist/webcomponents/{p-BVwVhXcQ.js → p-CFevTCAJ.js} +1 -1
  368. package/dist/webcomponents/{p-BKM7YeAB.js → p-CPtsjcdm.js} +1 -1
  369. package/dist/webcomponents/p-Ch9cTPyq.js +1 -0
  370. package/dist/webcomponents/p-DCIW8z1f.js +1 -0
  371. package/dist/webcomponents/p-DU8dqq9U.js +1 -0
  372. package/dist/webcomponents/{p-Cmb6PRFh.js → p-D_IJC4HG.js} +1 -1
  373. package/dist/webcomponents/p-MQxr_LMC.js +1 -0
  374. package/dist/webcomponents/p-a54b8901.entry.js +1 -0
  375. package/dist/webcomponents/p-a655b996.entry.js +1 -0
  376. package/dist/webcomponents/p-a7f8cacb.entry.js +1 -0
  377. package/dist/webcomponents/p-aec7a3c8.entry.js +1 -0
  378. package/dist/webcomponents/{p-03c8c754.entry.js → p-aec9185f.entry.js} +1 -1
  379. package/dist/webcomponents/{p-4e71de94.entry.js → p-af48a6bb.entry.js} +1 -1
  380. package/dist/webcomponents/p-b24a2971.entry.js +1 -0
  381. package/dist/webcomponents/p-bf8cf72d.entry.js +1 -0
  382. package/dist/webcomponents/p-c3b71a1f.entry.js +1 -0
  383. package/dist/webcomponents/p-c9b50493.entry.js +1 -0
  384. package/dist/webcomponents/{p-f528da70.entry.js → p-cd10cd05.entry.js} +1 -1
  385. package/dist/webcomponents/p-czPIvHxt.js +1 -0
  386. package/dist/webcomponents/p-d39598e4.entry.js +1 -0
  387. package/dist/webcomponents/p-d7a06b34.entry.js +1 -0
  388. package/dist/webcomponents/p-db17bc59.entry.js +1 -0
  389. package/dist/webcomponents/p-dc0d3484.entry.js +1 -0
  390. package/dist/webcomponents/p-deda2e9d.entry.js +1 -0
  391. package/dist/webcomponents/p-e00fb7b1.entry.js +1 -0
  392. package/dist/webcomponents/p-e07bf523.entry.js +1 -0
  393. package/dist/webcomponents/p-eb56ba9b.entry.js +1 -0
  394. package/dist/webcomponents/{p-e7e5fee9.entry.js → p-ed55d333.entry.js} +1 -1
  395. package/dist/webcomponents/p-edcb84bf.entry.js +1 -0
  396. package/dist/webcomponents/{p-aaed4997.entry.js → p-f0957fca.entry.js} +1 -1
  397. package/dist/webcomponents/p-f0fc86ce.entry.js +1 -0
  398. package/dist/webcomponents/p-f223fabb.entry.js +1 -0
  399. package/dist/webcomponents/p-f26db2e6.entry.js +1 -0
  400. package/dist/webcomponents/{p-b8426810.entry.js → p-f6ec50c9.entry.js} +1 -1
  401. package/dist/webcomponents/p-fab28b02.entry.js +1 -0
  402. package/dist/webcomponents/webcomponents.esm.js +1 -1
  403. package/docs/.eslintrc.cjs +17 -0
  404. package/docs/changelog/index.mdx +17 -0
  405. package/docs/entities/businessdetails/index.mdx +155 -0
  406. package/docs/entities/businessform/index.mdx +242 -0
  407. package/docs/entities/index.mdx +19 -0
  408. package/docs/entities/payment-provisioning/index.mdx +131 -0
  409. package/docs/frameworks/angular/index.mdx +112 -0
  410. package/docs/frameworks/index.mdx +18 -0
  411. package/docs/frameworks/react/index.mdx +125 -0
  412. package/docs/frameworks/vue/index.mdx +102 -0
  413. package/docs/helpers/PartsTable.ts +55 -0
  414. package/docs/helpers/PropsTable.ts +63 -0
  415. package/docs/helpers/index.ts +3 -0
  416. package/docs/helpers/version.ts +32 -0
  417. package/docs/introduction/index.mdx +125 -0
  418. package/docs/merchant-tools/checkouts-list/index.mdx +107 -0
  419. package/docs/merchant-tools/gross-payments-chart/index.mdx +81 -0
  420. package/docs/merchant-tools/index.mdx +25 -0
  421. package/docs/merchant-tools/order-terminals/index.mdx +84 -0
  422. package/docs/merchant-tools/payment-details/index.mdx +131 -0
  423. package/docs/merchant-tools/payment-transactions-list/index.mdx +85 -0
  424. package/docs/merchant-tools/payments-list/index.mdx +111 -0
  425. package/docs/merchant-tools/payout-details/index.mdx +90 -0
  426. package/docs/merchant-tools/payout-transactions-list/index.mdx +84 -0
  427. package/docs/merchant-tools/payouts-list/index.mdx +94 -0
  428. package/docs/merchant-tools/terminal-orders-list/index.mdx +85 -0
  429. package/docs/merchant-tools/terminals-list/index.mdx +93 -0
  430. package/docs/modular-checkout/complete-examples/index.mdx +20 -0
  431. package/docs/modular-checkout/docs/index.mdx +32 -0
  432. package/docs/modular-checkout/example/index.mdx +25 -0
  433. package/docs/modular-checkout/index.mdx +25 -0
  434. package/docs/modular-checkout/introduction/index.mdx +100 -0
  435. package/docs/modular-checkout/sub-components/apple-pay.mdx +97 -0
  436. package/docs/modular-checkout/sub-components/bank-account-form.mdx +163 -0
  437. package/docs/modular-checkout/sub-components/card-form.mdx +178 -0
  438. package/docs/modular-checkout/sub-components/index.mdx +23 -0
  439. package/docs/modular-checkout/sub-components/payment-method-options.mdx +85 -0
  440. package/docs/modular-checkout/sub-components/plaid-payment-method.mdx +176 -0
  441. package/docs/modular-checkout/sub-components/saved-payment-methods.mdx +178 -0
  442. package/docs/modular-checkout/sub-components/season-interruption-insurance.mdx +220 -0
  443. package/docs/modular-checkout/sub-components/sezzle-payment-method.mdx +184 -0
  444. package/docs/modular-checkout/sub-components/summary.mdx +108 -0
  445. package/docs/payment-facilitation/dispute-management/index.mdx +98 -0
  446. package/docs/payment-facilitation/index.mdx +21 -0
  447. package/docs/payment-facilitation/refund-payment/index.mdx +230 -0
  448. package/docs/payment-facilitation/tokenize-payment-method/index.mdx +362 -0
  449. package/docs/payment-facilitation/unified-fintech-checkout/342/204/242/index.mdx +164 -0
  450. package/package.json +21 -6
  451. package/dist/collection/api/GooglePay.js +0 -181
  452. package/dist/collection/api/services/google-pay.service.js +0 -240
  453. package/dist/collection/components/modular-checkout/sub-components/google-pay-skeleton.js +0 -10
  454. package/dist/collection/components/modular-checkout/sub-components/google-pay.js +0 -609
  455. package/dist/collection/ui-components/google-pay-button.js +0 -251
  456. package/dist/module/ApplePay.js +0 -121
  457. package/dist/module/GooglePay.js +0 -184
  458. package/dist/module/google-pay.js +0 -781
  459. package/dist/module/justifi-google-pay.d.ts +0 -11
  460. package/dist/module/justifi-google-pay.js +0 -6
  461. package/dist/types/api/GooglePay.d.ts +0 -271
  462. package/dist/types/api/services/google-pay.service.d.ts +0 -60
  463. package/dist/types/components/modular-checkout/sub-components/google-pay-skeleton.d.ts +0 -6
  464. package/dist/types/components/modular-checkout/sub-components/google-pay.d.ts +0 -59
  465. package/dist/types/ui-components/google-pay-button.d.ts +0 -18
  466. package/dist/webcomponents/p-03930216.entry.js +0 -1
  467. package/dist/webcomponents/p-0412f491.entry.js +0 -1
  468. package/dist/webcomponents/p-04154136.entry.js +0 -1
  469. package/dist/webcomponents/p-06ce1202.entry.js +0 -1
  470. package/dist/webcomponents/p-0772719b.entry.js +0 -1
  471. package/dist/webcomponents/p-0cd1c683.entry.js +0 -1
  472. package/dist/webcomponents/p-136b29e3.entry.js +0 -1
  473. package/dist/webcomponents/p-13bdb5ed.entry.js +0 -1
  474. package/dist/webcomponents/p-16812327.entry.js +0 -1
  475. package/dist/webcomponents/p-1d04bd7a.entry.js +0 -1
  476. package/dist/webcomponents/p-1f196690.entry.js +0 -1
  477. package/dist/webcomponents/p-270bf699.entry.js +0 -1
  478. package/dist/webcomponents/p-2da4e6ca.entry.js +0 -1
  479. package/dist/webcomponents/p-2eb123a3.entry.js +0 -1
  480. package/dist/webcomponents/p-38e1ef4b.entry.js +0 -1
  481. package/dist/webcomponents/p-3ae12b98.entry.js +0 -1
  482. package/dist/webcomponents/p-3c006a15.entry.js +0 -1
  483. package/dist/webcomponents/p-404b3f02.entry.js +0 -1
  484. package/dist/webcomponents/p-42658888.entry.js +0 -1
  485. package/dist/webcomponents/p-43390a7f.entry.js +0 -1
  486. package/dist/webcomponents/p-47f6d271.entry.js +0 -1
  487. package/dist/webcomponents/p-4f102cfd.entry.js +0 -1
  488. package/dist/webcomponents/p-5cba8448.entry.js +0 -1
  489. package/dist/webcomponents/p-7b610d9e.entry.js +0 -1
  490. package/dist/webcomponents/p-7bf6ded7.entry.js +0 -1
  491. package/dist/webcomponents/p-7dbd0618.entry.js +0 -1
  492. package/dist/webcomponents/p-88f58abe.entry.js +0 -1
  493. package/dist/webcomponents/p-8f4adcfd.entry.js +0 -1
  494. package/dist/webcomponents/p-9065d67e.entry.js +0 -1
  495. package/dist/webcomponents/p-914b590d.entry.js +0 -1
  496. package/dist/webcomponents/p-9370cf0d.entry.js +0 -1
  497. package/dist/webcomponents/p-9a795f44.entry.js +0 -1
  498. package/dist/webcomponents/p-BN1PYSFf.js +0 -1
  499. package/dist/webcomponents/p-BRbk6oSh.js +0 -1
  500. package/dist/webcomponents/p-Bx3wyDU2.js +0 -1
  501. package/dist/webcomponents/p-BxtmTjqW.js +0 -1
  502. package/dist/webcomponents/p-CQrwlULd.js +0 -1
  503. package/dist/webcomponents/p-DkoufM1t.js +0 -1
  504. package/dist/webcomponents/p-a020c889.entry.js +0 -1
  505. package/dist/webcomponents/p-a0c9f0bd.entry.js +0 -1
  506. package/dist/webcomponents/p-a6e816f6.entry.js +0 -1
  507. package/dist/webcomponents/p-a87187c3.entry.js +0 -1
  508. package/dist/webcomponents/p-a9f75a9e.entry.js +0 -1
  509. package/dist/webcomponents/p-ad9307c1.entry.js +0 -1
  510. package/dist/webcomponents/p-b3f8d5d4.entry.js +0 -1
  511. package/dist/webcomponents/p-ba0762f9.entry.js +0 -1
  512. package/dist/webcomponents/p-c41191e7.entry.js +0 -1
  513. package/dist/webcomponents/p-c621e7af.entry.js +0 -1
  514. package/dist/webcomponents/p-c63b0271.entry.js +0 -1
  515. package/dist/webcomponents/p-c88babbe.entry.js +0 -1
  516. package/dist/webcomponents/p-d2935214.entry.js +0 -1
  517. package/dist/webcomponents/p-d88d228f.entry.js +0 -1
  518. package/dist/webcomponents/p-e9d13cca.entry.js +0 -1
  519. package/dist/webcomponents/p-ee122560.entry.js +0 -1
  520. package/dist/webcomponents/p-f4cb581f.entry.js +0 -1
@@ -0,0 +1 @@
1
+ import{h as t,r as e,c as i,H as s,g as n}from"./p-DwYM91AU.js";import{A as a}from"./p-C8yN3uBj.js";import{S as o}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{S as r}from"./p-c7MCfTgE.js";import{c as l,o as c,g as h,a as d,b as u}from"./p-DU8dqq9U.js";import{D as p,r as y}from"./p-wtuY7MT2.js";import{f as m}from"./p-BS7OgSQe.js";import{H as v}from"./p-zNSPsvs3.js";import{H as M,b as f,h as g,i as b}from"./p-nrZ9yHcl.js";import{H as k}from"./p-C-2kW6Al.js";import{J as w,c as A}from"./p-CApezhx9.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as j,a as T,b as N}from"./p-Cjcsf8ku.js";import{I as P}from"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as E,a as I}from"./p-D2muobcE.js";import{C}from"./p-B4ZUYyNh.js";import{P as D,a as S,b as x}from"./p-DCIW8z1f.js";import{C as O}from"./p-ZpPDShvP.js";import"./p-BYsgavgS.js";import"./p-czPIvHxt.js";var L,z,R,_,U;!function(t){t.STATUS_SUCCESS="STATUS_SUCCESS",t.STATUS_FAILURE="STATUS_FAILURE"}(L||(L={})),function(t){t.PLAIN="plain",t.BUY="buy",t.SET_UP="set-up",t.DONATE="donate",t.CHECK_OUT="check-out",t.BOOK="book",t.SUBSCRIBE="subscribe"}(z||(z={})),function(t){t.BLACK="black",t.WHITE="white",t.WHITE_OUTLINE="white-outline"}(R||(R={})),function(t){t.SUPPORTS_3DS="supports3DS",t.SUPPORTS_EMV="supportsEMV",t.SUPPORTS_CREDIT="supportsCredit",t.SUPPORTS_DEBIT="supportsDebit"}(_||(_={}));class B{constructor(t){this.merchantIdentifier=t.merchantIdentifier,this.displayName=t.displayName,this.initiative=t.initiative,this.initiativeContext=t.initiativeContext,this.buttonType=t.buttonType||z.PLAIN,this.buttonStyle=t.buttonStyle||R.BLACK,this.buttonLocale=t.buttonLocale||"en-US"}get isValid(){return!!(this.merchantIdentifier&&this.displayName&&this.initiative&&this.initiativeContext)}}class Y{constructor(t){this.countryCode=t.countryCode,this.currencyCode=t.currencyCode,this.merchantCapabilities=t.merchantCapabilities,this.supportedNetworks=t.supportedNetworks,this.total=t.total,this.lineItems=t.lineItems,this.shippingMethods=t.shippingMethods,this.applicationData=t.applicationData,this.supportedCountries=t.supportedCountries}get isValid(){var t,e,i,s;return!!(this.countryCode&&this.currencyCode&&(null===(t=this.merchantCapabilities)||void 0===t?void 0:t.length)&&(null===(e=this.supportedNetworks)||void 0===e?void 0:e.length)&&(null===(i=this.total)||void 0===i?void 0:i.label)&&(null===(s=this.total)||void 0===s?void 0:s.amount))}}class Q{static isApplePaySupported(){var t;return"undefined"!=typeof window&&"ApplePaySession"in window&&(null===(t=window.ApplePaySession)||void 0===t?void 0:t.supportsVersion(3))}static canMakePayments(){var t;return this.isApplePaySupported()&&(null===(t=window.ApplePaySession)||void 0===t?void 0:t.canMakePayments())||!1}static async canMakePaymentsWithActiveCard(t){var e;if(!this.isApplePaySupported())return!1;try{return await(null===(e=window.ApplePaySession)||void 0===e?void 0:e.canMakePaymentsWithActiveCard(t))||!1}catch(t){return console.error("Error checking Apple Pay active card:",t),!1}}static formatAmount(t){return(t/100).toFixed(2)}static parseAmount(t){return Math.round(100*parseFloat(t))}static createLineItem(t,e,i="final"){return{label:t,amount:this.formatAmount(e),type:i}}static getDefaultSupportedNetworks(){return["amex","discover","masterCard","visa"]}static getDefaultMerchantCapabilities(){return[_.SUPPORTS_3DS,_.SUPPORTS_EMV,_.SUPPORTS_CREDIT,_.SUPPORTS_DEBIT]}}!function(t){t.UNAVAILABLE="UNAVAILABLE",t.SESSION_ERROR="SESSION_ERROR",t.MERCHANT_VALIDATION_ERROR="MERCHANT_VALIDATION_ERROR",t.PAYMENT_PROCESSING_ERROR="PAYMENT_PROCESSING_ERROR",t.USER_CANCELLED="USER_CANCELLED"}(U||(U={}));class F{constructor(){this.api=a()}initialize(t){if(this.applePayConfig=new B(t),!this.applePayConfig.isValid)throw new Error("Invalid Apple Pay configuration provided")}async validateMerchant(t,e){try{return await this.api.post({endpoint:"apple_pay/merchant_session",authToken:t,headers:{"Sub-Account":e},body:{domain:window.location.host,display_name:this.applePayConfig.displayName}})}catch(t){throw console.error("Backend validation failed:",t),new Error("Merchant validation failed")}}async processPayment(t,e,i){const s=await this.api.post({endpoint:"apple_pay/process_token",authToken:t,body:i,headers:{"Sub-Account":e}});return{success:s.id&&!!s.data.token,data:s}}isAvailable(){return Q.isApplePaySupported()&&Q.canMakePayments()}async canMakePaymentsWithActiveCard(){if(!this.applePayConfig)throw new Error("Apple Pay not initialized. Call initialize() first.");return await Q.canMakePaymentsWithActiveCard(this.applePayConfig.merchantIdentifier)}async startPaymentSession(t,e,i){if(!this.applePayConfig)throw console.error("[ApplePayService] Missing applePayConfig. Did you call initialize()?"),new Error("Apple Pay not initialized. Call initialize() first.");const s=new Y(t);if(!s.isValid){const t=[];throw s.countryCode||t.push("countryCode"),s.currencyCode||t.push("currencyCode"),s.merchantCapabilities&&0!==s.merchantCapabilities.length||t.push("merchantCapabilities"),s.supportedNetworks&&0!==s.supportedNetworks.length||t.push("supportedNetworks"),s.total&&s.total.label&&s.total.amount||t.push("total"),console.error("[ApplePayService] Payment request is invalid. Missing/invalid:",t),new Error("Invalid payment request provided")}return this.currentPaymentRequest=s,new Promise(((t,n)=>{try{if("undefined"==typeof window||!("ApplePaySession"in window))return console.error("[ApplePayService] ApplePaySession not available on window"),n({success:!1,error:{code:U.UNAVAILABLE,message:"ApplePaySession API is not available in this environment"}});this.currentSession=new window.ApplePaySession(3,s),this.setupSessionEventHandlers(t,n,e,i),this.currentSession.begin()}catch(t){console.error("[ApplePayService] Exception while starting session:",t),n({success:!1,error:{code:U.SESSION_ERROR,message:t instanceof Error?t.message:"Failed to start Apple Pay session"}})}}))}abortPaymentSession(){this.currentSession&&(this.currentSession.abort(),this.currentSession=void 0,this.currentPaymentRequest=void 0)}setupSessionEventHandlers(t,e,i,s){this.currentSession&&this.applePayConfig&&this.currentPaymentRequest?(this.currentSession.onvalidatemerchant=async()=>{try{if(!i)throw console.error("[ApplePayService] Missing authToken for merchant validation"),new Error("Authentication token not provided.");const t=await this.validateMerchant(i,s);try{this.currentSession.completeMerchantValidation(t)}catch(t){throw console.error("Error calling completeMerchantValidation:",t),t}}catch(t){console.error("=== MERCHANT VALIDATION ERROR ==="),console.error("Error during merchant validation:",t),t&&t.stack&&console.error("Error stack:",t.stack),this.currentSession.abort(),e({success:!1,error:{code:U.MERCHANT_VALIDATION_ERROR,message:t instanceof Error?t.message:"Merchant validation failed"}})}},this.currentSession.onpaymentauthorized=async n=>{try{const a=n.payment,o=Object.assign(Object.assign({},a.token),{product_details:{name:this.currentPaymentRequest.total.label,price:Q.parseAmount(this.currentPaymentRequest.total.amount),description:this.currentPaymentRequest.total.label}}),r=await this.processPayment(i,s,o);r.success?(this.currentSession.completePayment({status:L.STATUS_SUCCESS}),t({success:!0,token:a.token,paymentMethodId:r.data.id})):(console.error("PSP reported payment failure:",r.data),this.currentSession.completePayment({status:L.STATUS_FAILURE}),e({success:!1,error:{code:U.PAYMENT_PROCESSING_ERROR,message:"Payment processing failed"}}))}catch(t){console.error("=== PAYMENT PROCESSING ERROR ==="),console.error("Error processing payment:",t),t&&t.stack&&console.error("Error stack:",t.stack),this.currentSession.completePayment({status:L.STATUS_FAILURE}),e({success:!1,error:{code:U.PAYMENT_PROCESSING_ERROR,message:t instanceof Error?t.message:"Payment processing failed"}})}finally{this.currentSession=void 0,this.currentPaymentRequest=void 0}},this.currentSession.onpaymentmethodselected=()=>{const t={newTotal:this.currentPaymentRequest.total,newLineItems:this.currentPaymentRequest.lineItems||[]};try{this.currentSession.completePaymentMethodSelection(t)}catch(t){console.error("Error completing payment method selection:",t),this.currentSession.abort()}},this.currentSession.onshippingmethodselected=()=>{this.currentSession.completeShippingMethodSelection({status:L.STATUS_SUCCESS,newTotal:this.currentPaymentRequest.total,newLineItems:this.currentPaymentRequest.lineItems||[]})},this.currentSession.oncancel=t=>{if(t.sessionError)switch(console.error(t.sessionError),t.sessionError.code){case"unknown":console.error("Unknown error - likely merchant validation issue"),console.error("This usually means:"),console.error("1. Merchant certificate is invalid or expired"),console.error("2. Merchant identifier mismatch"),console.error("3. Backend validation endpoint issues");break;case"invalidMerchantSession":console.error("Invalid merchant session provided"),console.error("Check that the merchant session from backend is valid");break;case"userCancel":console.error("User cancelled the payment");break;default:console.error("Other error code:",t.sessionError.code)}this.currentSession=void 0,this.currentPaymentRequest=void 0,e({success:!1,error:{code:U.USER_CANCELLED,message:"User cancelled the Apple Pay session"}})},"onerror"in this.currentSession&&(this.currentSession.onerror=t=>{console.error("=== APPLE PAY SESSION ERROR ==="),console.error("Session error:",t),this.currentSession=void 0,this.currentPaymentRequest=void 0,e({success:!1,error:{code:U.SESSION_ERROR,message:"Apple Pay session error occurred"}})})):console.error("[ApplePayService] setupSessionEventHandlers called without required state",{hasSession:Boolean(this.currentSession),hasConfig:Boolean(this.applePayConfig),hasPaymentRequest:Boolean(this.currentPaymentRequest)})}static createPaymentRequest(t,e,i="US",s="USD"){return{countryCode:i,currencyCode:s,merchantCapabilities:Q.getDefaultMerchantCapabilities(),supportedNetworks:Q.getDefaultSupportedNetworks(),total:Q.createLineItem(e,t)}}getApplePayConfig(){return this.applePayConfig}}const V=e=>{const{isLoading:i}=e;return i?t("div",{class:"container-fluid p-0"},t("div",{class:"row mb-3"},t("div",{class:"col-12 align-content-center"},t(r,{height:"44px",width:"100%",styles:{borderRadius:"8px"}})))):null},H=e=>t("div",{class:"apple-pay-button-container"},t("button",Object.assign({class:(()=>{let t="apple-pay-button";switch(e.buttonStyle){case R.WHITE:t+=" apple-pay-button-white";break;case R.WHITE_OUTLINE:t+=" apple-pay-button-white-outline";break;default:t+=" apple-pay-button-black"}switch(e.buttonType){case z.BUY:t+=" apple-pay-button-type-buy";break;case z.DONATE:t+=" apple-pay-button-type-donate";break;default:t+=" apple-pay-button-type-plain"}return(e.disabled||e.isProcessing||!e.isAvailable)&&(t+=" disabled"),t})(),style:{width:e.width,height:e.height},onClick:()=>{!e.disabled&&!e.isProcessing&&e.isAvailable&&e.clickHandler&&e.clickHandler()},disabled:e.disabled||e.isProcessing||!e.isAvailable,"aria-label":"Pay with Apple Pay",type:"button"},e),e.isProcessing&&t("div",{class:"processing-overlay"},t("div",{class:"spinner"}),t("span",null,"Processing..."))),t("style",null,"\n .apple-pay-button-container {\n display: block;\n position: relative;\n width: 100%;\n }\n\n /* Apple Pay CSS classes - these are the official Apple Pay button styles */\n .apple-pay-button {\n display: inline-block;\n -webkit-appearance: -apple-pay-button;\n -apple-pay-button-type: plain; /* default */\n -apple-pay-button-style: black; /* default */\n border-radius: 8px;\n cursor: pointer;\n border: none;\n outline: none;\n transition: opacity 0.2s ease;\n position: relative;\n }\n\n /* Button styles */\n .apple-pay-button.apple-pay-button-black {\n -apple-pay-button-style: black;\n }\n\n .apple-pay-button.apple-pay-button-white {\n -apple-pay-button-style: white;\n }\n\n .apple-pay-button.apple-pay-button-white-outline {\n -apple-pay-button-style: white-outline;\n }\n\n /* Button types */\n .apple-pay-button.apple-pay-button-type-plain {\n -apple-pay-button-type: plain;\n }\n\n .apple-pay-button.apple-pay-button-type-buy {\n -apple-pay-button-type: buy;\n }\n\n .apple-pay-button.apple-pay-button-type-donate {\n -apple-pay-button-type: donate;\n }\n\n /* Hover and disabled states */\n .apple-pay-button:hover:not(.disabled) {\n opacity: 0.9;\n }\n\n .apple-pay-button.disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n /* Processing overlay */\n .processing-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n background: rgba(0, 0, 0, 0.8);\n color: white;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n }\n\n .spinner {\n width: 16px;\n height: 16px;\n border: 2px solid rgba(255, 255, 255, 0.3);\n border-top: 2px solid #fff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n\n /* Responsive design */\n @media (max-width: 480px) {\n .apple-pay-button {\n width: 100% !important;\n min-width: 200px;\n }\n }\n ")),Z=class{constructor(t){e(this,t),this.applePayStarted=i(this,"applePayStarted"),this.applePayCompleted=i(this,"applePayCompleted"),this.applePayCancelled=i(this,"applePayCancelled"),this.applePayError=i(this,"applePayError"),this.countryCode="US",this.merchantIdentifier="merchant.com.staging-justifi.checkout-dev",this.merchantDisplayName="JustiFi Checkout",this.initiativeContext="dev-checkout.justifi-staging.com",this.buttonType=z.PLAIN,this.buttonStyle=R.BLACK,this.disabled=!1,this.showSkeleton=!0,this.width="100%",this.height="48px",this.isLoading=!0,this.isProcessing=!1,this.isAvailable=!1,this.canMakePayments=!1,this.isConfigValid=!0,this.error=null,this.handleApplePayClick=async()=>{var t,e;if(!this.isProcessing&&!this.disabled&&this.isAvailable)try{this.isProcessing=!0,this.error=null,this.applePayStarted.emit();const i={countryCode:this.countryCode,currencyCode:l.paymentCurrency,merchantCapabilities:[_.SUPPORTS_3DS,_.SUPPORTS_CREDIT,_.SUPPORTS_DEBIT],supportedNetworks:Q.getDefaultSupportedNetworks(),total:Q.createLineItem(l.paymentDescription,l.paymentAmount)},s=await this.applePayService.startPaymentSession(i,l.authToken,l.accountId);s.success?this.applePayCompleted.emit({success:!0,token:s.token,paymentMethodId:s.paymentMethodId}):(this.applePayCompleted.emit({success:!1,error:s.error}),this.applePayError.emit({error:(null===(t=s.error)||void 0===t?void 0:t.message)||"Payment failed",code:(null===(e=s.error)||void 0===e?void 0:e.code)||Z.ErrorCode.PAYMENT_FAILED}))}catch(t){const e=t instanceof Error?t.message:"Payment failed";this.error=e,this.applePayError.emit({error:e,code:Z.ErrorCode.PAYMENT_FAILED}),this.applePayCompleted.emit({success:!1,error:e})}finally{this.isProcessing=!1}}}async initializeApplePay(){try{if(this.isLoading=!0,this.error=null,this.isConfigValid=!0,!(Boolean(l.paymentAmount)&&Boolean(l.paymentCurrency)&&Boolean(l.authToken)))return this.error="Missing required Apple Pay configuration",this.isConfigValid=!1,console.error("Apple Pay config error: missing required values",{paymentAmount:l.paymentAmount,paymentCurrency:l.paymentCurrency,hasAuthToken:Boolean(l.authToken),accountId:l.accountId}),this.applePayError.emit({error:this.error,code:Z.ErrorCode.CONFIG_ERROR}),void(this.isLoading=!1);if(this.isAvailable=Q.isApplePaySupported(),this.canMakePayments=Q.canMakePayments(),!this.isAvailable)return this.error="Apple Pay is not supported on this device",console.error(this.error),this.applePayError.emit({error:this.error,code:Z.ErrorCode.NOT_SUPPORTED}),void(this.isLoading=!1);if(!this.canMakePayments)return this.error="Apple Pay is not available",console.error(this.error),this.applePayError.emit({error:this.error,code:Z.ErrorCode.NOT_AVAILABLE}),void(this.isLoading=!1);const t={merchantIdentifier:this.merchantIdentifier,displayName:this.merchantDisplayName,initiative:"web",initiativeContext:this.initiativeContext,buttonType:this.buttonType,buttonStyle:this.buttonStyle};this.applePayService=new F,this.applePayService.initialize(t),await this.applePayService.canMakePaymentsWithActiveCard()||console.warn("No Apple Pay cards available, but continuing...")}catch(t){console.error("Apple Pay initialization error:",t),this.error=t instanceof Error?t.message:"Failed to initialize Apple Pay",this.applePayError.emit({error:this.error,code:Z.ErrorCode.INITIALIZATION_ERROR})}finally{this.isLoading=!1}}async isSupported(){return this.isAvailable&&this.canMakePayments}async getPaymentMethods(){return this.isAvailable?Q.getDefaultSupportedNetworks():[]}async abort(){this.applePayService.abortPaymentSession(),this.isProcessing=!1,this.applePayCancelled.emit()}render(){if(!l.applePayEnabled)return null;const e=!this.isLoading&&this.isAvailable&&this.canMakePayments&&this.isConfigValid;return t(o,null,l.checkoutLoaded&&t("script",{async:!0,src:"https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js",onLoad:()=>{this.initializeApplePay()}}),t("div",{class:"apple-pay-container"},t(V,{isLoading:this.isLoading}),e&&t(H,{buttonType:this.buttonType,buttonStyle:this.buttonStyle,disabled:this.disabled,isProcessing:this.isProcessing,isAvailable:this.isAvailable,clickHandler:this.handleApplePayClick,width:this.width,height:this.height})),t("style",null,"\n .apple-pay-container {\n width: 100%;\n }\n "))}};Z.ErrorCode={CONFIG_ERROR:"CONFIG_ERROR",NOT_SUPPORTED:"NOT_SUPPORTED",NOT_AVAILABLE:"NOT_AVAILABLE",INITIALIZATION_ERROR:"INITIALIZATION_ERROR",PAYMENT_FAILED:"PAYMENT_FAILED"};const W=class{constructor(t){e(this,t)}render(){return t(o,{key:"fd2c61dcafdc800d0064c19d29c6e007aed5adb5"},t("section",{key:"f2abef1233f3ccad3982d10c61ec5765e13e27a5"},t("div",{key:"713d66ef6f7e2fc73135e765069baba6df976f52"},t("div",{key:"b8dd28f257948aa317366fe3ea6d2bc4911ef164",part:p},null==l?void 0:l.paymentDescription),t("div",{key:"675676b40de7dc27d07bfafc0eee77eb855a3d26"},t("span",{key:"cbd47994d9c3f1518741a298de3f5d62a0ad5313",part:p},"Total")," ",t("span",{key:"614748853f666f1b072d4fa9b14ee15ef5717112",part:p},m(+(null==l?void 0:l.totalAmount)))))))}},q=class{constructor(t){e(this,t),this.levels={h1:v,h2:M,h3:k},this.level="h1"}render(){return t(o,{key:"d4871da09451d40b27220a207ee72317ed9b1b9f"},t(this.levels[this.level],{key:"f7de159fa6395ef4024f48b868369f8d10edf64e",text:this.text,class:this.class}))}},G=a();class J{async getLinkToken(t,e,i,s){return G.post({endpoint:`plaid/${e}/link`,body:{checkout_id:i},authToken:t,signal:s})}async tokenizeBankAccount(t,e,i,s,n,a){const o=`plaid/${e}/tokenize`,r={public_token:i};return s&&(r.link_token_id=s),n&&(r.payment_method_group_id=n),G.post({endpoint:o,body:r,authToken:t,signal:a})}}const X=class{constructor(t){e(this,t),this.errorEvent=i(this,"error-event"),this.submitEvent=i(this,"submit-event"),this.checkoutChangedEvent=i(this,"checkout-changed"),this.plaidService=new J,this.handleApplePayCompleted=t=>{const{success:e,token:i,paymentMethodId:s,error:n}=t.detail;e&&i?(l.paymentToken=s,l.selectedPaymentMethod={type:D.APPLE_PAY},this.submitCheckout()):(console.error("Apple Pay completed but failed:",n),this.errorEvent.emit({message:(null==n?void 0:n.message)||"Apple Pay payment failed",errorCode:T.TOKENIZE_ERROR,severity:j.ERROR}))},this.handleApplePayError=t=>{const{error:e,code:i}=t.detail;console.error("Apple Pay error:",e),this.errorEvent.emit({message:e||"Apple Pay error occurred",errorCode:`APPLE_PAY_${i}`,severity:j.ERROR})},this.handleApplePayCancelled=()=>{l.paymentToken=void 0,l.selectedPaymentMethod=void 0}}connectedCallback(){this.observer=new MutationObserver((()=>{this.queryFormRefs(),this.setupApplePayListeners()})),this.observer.observe(this.hostEl,{childList:!0,subtree:!0}),l.checkoutId=this.checkoutId;const t={authToken:this.authToken,checkoutId:this.checkoutId,service:new C};this.getCheckout=(({authToken:t,checkoutId:e,service:i})=>async({onSuccess:s,onError:n})=>{var a;try{const o=await i.fetchCheckout(t,e);if(o.error)return n({error:I(o.error),code:E(null===(a=o.error)||void 0===a?void 0:a.code),severity:j.ERROR});s({checkout:o.data})}catch(t){const e=E(null==t?void 0:t.code);return n({error:t.message||t,code:e,severity:j.ERROR})}})(t),this.completeCheckout=(({authToken:t,checkoutId:e,service:i})=>async({payment:s,onSuccess:n,onError:a})=>{var o;try{const r=await i.complete(t,e,s);if(r.error)return a({error:I(r.error),code:E(null===(o=r.error)||void 0===o?void 0:o.code),severity:j.ERROR});n({checkout:r.data})}catch(t){const e=E(null==t?void 0:t.code);return a({error:t.message||t,code:e,severity:j.ERROR})}})(t),c((()=>{this.emitCheckoutChanged()}))}componentWillLoad(){this.analytics=new w(this),A(),l.authToken=this.authToken,this.fetchCheckout(),f("set",(t=>{const e=b[t];void 0!==e&&g(t,e)&&this.fetchCheckout()}))}componentDidLoad(){this.queryFormRefs(),this.setupApplePayListeners()}disconnectedCallback(){var t;null===(t=this.observer)||void 0===t||t.disconnect(),this.removeApplePayListeners()}fetchCheckout(){this.authToken&&this.checkoutId?this.getCheckout&&this.getCheckout({onSuccess:({checkout:t})=>{this.updateStore(t),t.status!==P.completed?t.status!==P.expired||this.errorEvent.emit({message:N.CHECKOUT_EXPIRED,errorCode:T.CHECKOUT_EXPIRED,severity:j.ERROR}):this.errorEvent.emit({message:N.CHECKOUT_ALREADY_COMPLETED,errorCode:T.CHECKOUT_ALREADY_COMPLETED,severity:j.ERROR})},onError:t=>{this.errorEvent.emit({message:t.message,errorCode:t.code,severity:t.severity})}}):this.errorEvent.emit({message:N.NOT_AUTHENTICATED,errorCode:T.NOT_AUTHENTICATED,severity:j.ERROR})}updateStore(t){var e,i,s,n,a,o;l.accountId=t.account_id,l.checkoutLoaded=!0,l.paymentMethods=t.payment_methods.map((t=>new S(t))),l.paymentMethodGroupId=t.payment_method_group_id,l.paymentDescription=t.payment_description,l.totalAmount=t.total_amount,l.paymentAmount=t.payment_amount,l.bnplEnabled=t.payment_settings.bnpl_payments,l.insuranceEnabled=t.payment_settings.insurance_payments,l.bankAccountVerification=null===(e=t.payment_settings)||void 0===e?void 0:e.bank_account_verification,l.applePayEnabled=null===(i=t.payment_settings)||void 0===i?void 0:i.apple_payments,l.bnplProviderClientId=null===(s=null==t?void 0:t.bnpl)||void 0===s?void 0:s.provider_client_id,l.bnplProviderMode=null===(n=null==t?void 0:t.bnpl)||void 0===n?void 0:n.provider_mode,l.bnplProviderApiVersion=null===(a=null==t?void 0:t.bnpl)||void 0===a?void 0:a.provider_api_version,l.bnplProviderCheckoutUrl=null===(o=null==t?void 0:t.bnpl)||void 0===o?void 0:o.provider_checkout_url}emitCheckoutChanged(){const t={availablePaymentMethodTypes:h(),selectedPaymentMethod:l.selectedPaymentMethod,savedPaymentMethods:l.paymentMethods};this.checkoutChangedEvent.emit(t)}queryFormRefs(){this.billingFormRef=this.hostEl.querySelector("justifi-billing-form, justifi-bank-account-billing-form-simple, justifi-card-billing-form-simple, justifi-billing-form-full"),this.applePayRef=this.hostEl.querySelector("justifi-apple-pay"),this.paymentMethodFormRef=this.hostEl.querySelector("justifi-card-form, justifi-bank-account-form, justifi-tokenize-payment-method"),this.insuranceFormRef=this.hostEl.querySelector("justifi-season-interruption-insurance")}setupApplePayListeners(){this.applePayRef&&(this.applePayRef.addEventListener("applePayCompleted",this.handleApplePayCompleted),this.applePayRef.addEventListener("applePayError",this.handleApplePayError),this.applePayRef.addEventListener("applePayCancelled",this.handleApplePayCancelled))}removeApplePayListeners(){this.applePayRef&&(this.applePayRef.removeEventListener("applePayCompleted",this.handleApplePayCompleted),this.applePayRef.removeEventListener("applePayError",this.handleApplePayError),this.applePayRef.removeEventListener("applePayCancelled",this.handleApplePayCancelled))}async tokenizePaymentMethod(t){var e,i,s;const n=null!==(i=await(null===(e=this.billingFormRef)||void 0===e?void 0:e.getValues()))&&void 0!==i?i:{},a=Object.assign(Object.assign({},t),n),o=Object.assign({accountId:l.accountId,payment_method_group_id:void 0},a);l.savePaymentMethod&&(o.payment_method_group_id=l.paymentMethodGroupId);const r=await(null===(s=this.paymentMethodFormRef)||void 0===s?void 0:s.tokenize({clientId:this.authToken,paymentMethodMetadata:o,account:l.accountId}));return r.error?r:(l.paymentToken=r.id,r.id)}async setSelectedPaymentMethod(t){l.selectedPaymentMethod=t,l.paymentToken=t.id||void 0}async validate(){var t,e;const i=[];l.insuranceEnabled&&this.insuranceFormRef&&i.push(this.insuranceFormRef.validate());const s=(null===(t=l.selectedPaymentMethod)||void 0===t?void 0:t.type)===D.NEW_CARD,n=(null===(e=l.selectedPaymentMethod)||void 0===e?void 0:e.type)===D.NEW_BANK_ACCOUNT;if((s||n)&&(this.paymentMethodFormRef&&i.push(this.paymentMethodFormRef.validate()),this.billingFormRef&&i.push(this.billingFormRef.validate())),0===i.length)return!0;try{return!!(await Promise.all(i)).every((t=>"boolean"==typeof t?t:!1!==(null==t?void 0:t.isValid)))||(this.errorEvent.emit({message:"Validation error",errorCode:T.VALIDATION_ERROR,severity:j.ERROR}),!1)}catch(t){return!1}}async submitCheckout(t){var e,i,s,n,a;const o=await this.validate();if(!l.selectedPaymentMethod)return void this.errorEvent.emit({message:"No payment method selected.",errorCode:T.VALIDATION_ERROR,severity:j.ERROR});const r=(null===(e=l.selectedPaymentMethod)||void 0===e?void 0:e.type)===D.NEW_CARD,c=(null===(i=l.selectedPaymentMethod)||void 0===i?void 0:i.type)===D.NEW_BANK_ACCOUNT,h=(null===(s=l.selectedPaymentMethod)||void 0===s?void 0:s.type)===D.PLAID;if(r||c){const e=await this.tokenizePaymentMethod(t);if(null==e?void 0:e.error)return void this.errorEvent.emit({message:e.error.message,errorCode:T.TOKENIZE_ERROR,severity:j.ERROR})}if(h&&!l.paymentToken){const t=l.plaidPublicToken,e=l.plaidLinkTokenId;if(!t)return void this.errorEvent.emit({message:"Missing Plaid public token. Please connect your bank.",errorCode:T.TOKENIZE_ERROR,severity:j.ERROR});try{const i=await this.plaidService.tokenizeBankAccount(l.authToken,l.accountId,t,e||void 0,l.savePaymentMethod?l.paymentMethodGroupId:void 0);if(null==i?void 0:i.error)return void this.errorEvent.emit({message:"string"==typeof i.error?i.error:i.error.message||"Failed to tokenize bank account",errorCode:T.TOKENIZE_ERROR,severity:j.ERROR});const s=null==i?void 0:i.data,a=(null===(n=null==s?void 0:s.bank_account)||void 0===n?void 0:n.token)||(null==s?void 0:s.token)||(null==s?void 0:s.id);l.paymentToken=a}catch(t){return void this.errorEvent.emit({message:(null==t?void 0:t.message)||"Plaid exchange error",errorCode:T.TOKENIZE_ERROR,severity:j.ERROR})}}if(!o)return void this.errorEvent.emit({message:"Please fill in all required fields.",errorCode:T.VALIDATION_ERROR,severity:j.ERROR});if(!l.paymentToken)return void this.errorEvent.emit({message:"Payment token not found.",errorCode:T.TOKENIZE_ERROR,severity:j.ERROR});let u;if(u={payment_mode:(t=>{switch(t){case D.NEW_CARD:case D.SAVED_CARD:case D.NEW_BANK_ACCOUNT:case D.SAVED_BANK_ACCOUNT:case D.PLAID:return x.ECOM;case D.SEZZLE:return x.BNPL;case D.APPLE_PAY:return x.APPLE_PAY;default:return}})(null===(a=l.selectedPaymentMethod)||void 0===a?void 0:a.type),payment_token:l.paymentToken},this.preCompleteHook){const t=d();try{await new Promise(((e,i)=>{this.preCompleteHook(t,(()=>e()),(()=>i()))}))}catch(t){return}}this.completeCheckout({payment:u,onSuccess:({checkout:t})=>{this.submitEvent.emit({checkout:t,message:"Checkout completed successfully"})},onError:t=>{this.errorEvent.emit({message:t.message,errorCode:T.COMPLETE_CHECKOUT_ERROR,severity:j.ERROR})}})}render(){return t(s,{key:"56a003ca1e1ac4bdc1baa8f862cdb05b2d8af4b1"})}get hostEl(){return n(this)}};var $;!function(t){t.PLAID_SDK_LOAD_FAILED="plaid-sdk-load-failed",t.PLAID_LINK_INIT_FAILED="plaid-link-init-failed",t.PLAID_LINK_TOKEN_FAILED="plaid-link-token-failed",t.PLAID_AUTHENTICATION_FAILED="plaid-authentication-failed",t.PLAID_BANK_NOT_SUPPORTED="plaid-bank-not-supported",t.PLAID_TOKEN_EXPIRED="plaid-token-expired",t.PLAID_NETWORK_ERROR="plaid-network-error",t.PLAID_USER_CANCELLED="plaid-user-cancelled",t.PLAID_TIMEOUT="plaid-timeout",t.PLAID_INVALID_CREDENTIALS="plaid-invalid-credentials",t.PLAID_ACCOUNT_LOCKED="plaid-account-locked",t.PLAID_MAINTENANCE="plaid-maintenance",t.PLAID_RATE_LIMITED="plaid-rate-limited"}($||($={}));const K={[$.PLAID_SDK_LOAD_FAILED]:"Unable to load Plaid. Please refresh the page and try again.",[$.PLAID_LINK_INIT_FAILED]:"Unable to initialize bank connection. Please try again.",[$.PLAID_LINK_TOKEN_FAILED]:"Unable to connect to bank service. Please try again.",[$.PLAID_AUTHENTICATION_FAILED]:"Bank authentication failed. Please try again.",[$.PLAID_BANK_NOT_SUPPORTED]:"Your bank is not currently supported. Please try a different payment method.",[$.PLAID_TOKEN_EXPIRED]:"Your bank session has expired. Please reconnect your account.",[$.PLAID_NETWORK_ERROR]:"Network connection issue. Please check your internet connection and try again.",[$.PLAID_USER_CANCELLED]:"Bank connection was cancelled. Click to try again.",[$.PLAID_TIMEOUT]:"Bank connection timed out. Please try again.",[$.PLAID_INVALID_CREDENTIALS]:"Invalid bank credentials. Please check your username and password.",[$.PLAID_ACCOUNT_LOCKED]:"Your bank account is temporarily locked. Please contact your bank.",[$.PLAID_MAINTENANCE]:"Bank service is temporarily unavailable. Please try again later.",[$.PLAID_RATE_LIMITED]:"Too many connection attempts. Please wait a moment and try again."},tt={[$.PLAID_SDK_LOAD_FAILED]:j.ERROR,[$.PLAID_LINK_INIT_FAILED]:j.ERROR,[$.PLAID_LINK_TOKEN_FAILED]:j.ERROR,[$.PLAID_AUTHENTICATION_FAILED]:j.ERROR,[$.PLAID_BANK_NOT_SUPPORTED]:j.WARNING,[$.PLAID_TOKEN_EXPIRED]:j.WARNING,[$.PLAID_NETWORK_ERROR]:j.WARNING,[$.PLAID_USER_CANCELLED]:j.INFO,[$.PLAID_TIMEOUT]:j.WARNING,[$.PLAID_INVALID_CREDENTIALS]:j.ERROR,[$.PLAID_ACCOUNT_LOCKED]:j.ERROR,[$.PLAID_MAINTENANCE]:j.WARNING,[$.PLAID_RATE_LIMITED]:j.WARNING},et=class{constructor(t){e(this,t),this.paymentMethodOptionSelected=i(this,"paymentMethodOptionSelected"),this.plaidError=i(this,"plaidError"),this.plaidErrorRecovered=i(this,"plaidErrorRecovered"),this.isAuthenticating=!1,this.publicToken=null,this.linkToken=null,this.linkTokenId=null,this.error=null,this.plaidLink=null,this.isSelected=!1,this.retryCount=0,this.isRetrying=!1,this.plaidService=new J,this.maxRetries=3,this.retryDelay=2e3,this.timeoutId=null,this.abortController=null,this.hasLoggedDisabledWarning=!1,this.waitForStoreAndInitialize=()=>{l.authToken&&l.accountId&&l.checkoutId?this.initializePlaidLink():setTimeout((()=>{this.waitForStoreAndInitialize()}),100)},this.initializePlaidLink=async()=>{try{if(void 0===window.Plaid)return void this.handleError({code:$.PLAID_SDK_LOAD_FAILED,message:K[$.PLAID_SDK_LOAD_FAILED],severity:tt[$.PLAID_SDK_LOAD_FAILED],retryable:!0,userAction:"Refresh the page and try again"});if(await this.getLinkToken(),!this.linkToken)return void this.handleError({code:$.PLAID_LINK_TOKEN_FAILED,message:K[$.PLAID_LINK_TOKEN_FAILED],severity:tt[$.PLAID_LINK_TOKEN_FAILED],retryable:!0,userAction:"Click to try again"});const t=window.Plaid;this.plaidLink=t.create({token:this.linkToken,onSuccess:this.handlePlaidSuccess,onExit:this.handlePlaidExit,onEvent:this.handlePlaidEvent,onLoad:this.handlePlaidLoad})}catch(t){this.handleError({code:$.PLAID_LINK_INIT_FAILED,message:K[$.PLAID_LINK_INIT_FAILED],severity:tt[$.PLAID_LINK_INIT_FAILED],originalError:t,retryable:!0,userAction:"Click to try again"})}},this.getLinkToken=async()=>{var t,e,i,s,n;try{if(!l.authToken||!l.accountId)return void this.handleError({code:$.PLAID_LINK_TOKEN_FAILED,message:"Missing authentication. Please refresh the page and try again.",severity:j.ERROR,retryable:!1,userAction:"Refresh the page"});this.abortController=new AbortController,this.timeoutId=setTimeout((()=>{var t;null===(t=this.abortController)||void 0===t||t.abort()}),3e4);const e=await this.plaidService.getLinkToken(l.authToken,l.accountId,l.checkoutId,this.abortController.signal);if(this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null),e.error)throw new Error("string"==typeof e.error?e.error:e.error.message||"Failed to get link token");this.linkToken=e.data.link_token,this.linkTokenId=(null==e?void 0:e.id)||(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.id)||null,this.linkTokenId&&(l.plaidLinkTokenId=this.linkTokenId)}catch(t){this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null);let a=$.PLAID_LINK_TOKEN_FAILED,o=K[a],r=!0;"AbortError"===t.name?(a=$.PLAID_TIMEOUT,o=K[a],r=!0):(null===(e=t.message)||void 0===e?void 0:e.includes("network"))||(null===(i=t.message)||void 0===i?void 0:i.includes("fetch"))?(a=$.PLAID_NETWORK_ERROR,o=K[a],r=!0):((null===(s=t.message)||void 0===s?void 0:s.includes("401"))||(null===(n=t.message)||void 0===n?void 0:n.includes("unauthorized")))&&(a=$.PLAID_INVALID_CREDENTIALS,o="Authentication failed. Please refresh the page and try again.",r=!1),this.handleError({code:a,message:o,severity:tt[a],originalError:t,retryable:r,userAction:r?"Click to try again":"Refresh the page"})}},this.mapApiErrorToPlaidError=t=>{if("string"==typeof t){if(t.includes("rate_limit"))return $.PLAID_RATE_LIMITED;if(t.includes("maintenance"))return $.PLAID_MAINTENANCE;if(t.includes("not_authenticated"))return $.PLAID_INVALID_CREDENTIALS}if(null==t?void 0:t.code)switch(t.code){case"rate_limited":return $.PLAID_RATE_LIMITED;case"maintenance":return $.PLAID_MAINTENANCE;case"not_authenticated":return $.PLAID_INVALID_CREDENTIALS;default:return $.PLAID_LINK_TOKEN_FAILED}return $.PLAID_LINK_TOKEN_FAILED},this.openPlaidLink=()=>{this.plaidLink&&this.linkToken&&(this.isAuthenticating=!0,this.clearError(),this.plaidLink.open())},this.handlePlaidSuccess=t=>{this.publicToken=t,this.isAuthenticating=!1,this.clearError(),this.retryCount=0,this.isSelected||(this.isSelected=!0,l.selectedPaymentMethod={type:D.PLAID}),this.plaidErrorRecovered.emit({code:"plaid-success",message:"Bank account connected successfully",severity:j.INFO}),l.plaidPublicToken=t},this.handlePlaidExit=t=>{this.isAuthenticating=!1,t&&this.handlePlaidError(t)},this.handlePlaidEvent=(t,e)=>{switch(t){case"OPEN":this.isAuthenticating=!0;break;case"CLOSE":this.isAuthenticating=!1;break;case"ERROR":this.handlePlaidError(e)}},this.handlePlaidLoad=()=>{},this.handlePlaidError=t=>{let e=$.PLAID_AUTHENTICATION_FAILED,i=K[e],s=!0,n="Click to try again";if(t.error_code)switch(t.error_code){case"INVALID_CREDENTIALS":e=$.PLAID_INVALID_CREDENTIALS,i=K[e],s=!0;break;case"ITEM_LOGIN_REQUIRED":e=$.PLAID_INVALID_CREDENTIALS,i="Your bank requires re-authentication. Please try again.",s=!0;break;case"ITEM_LOCKED":e=$.PLAID_ACCOUNT_LOCKED,i=K[e],s=!1,n="Contact your bank";break;case"INSTITUTION_NOT_RESPONDING":e=$.PLAID_MAINTENANCE,i=K[e],s=!0;break;case"RATE_LIMIT_EXCEEDED":e=$.PLAID_RATE_LIMITED,i=K[e],s=!0;break;case"INVALID_REQUEST":e=$.PLAID_AUTHENTICATION_FAILED,i="Invalid request. Please try again.",s=!0;break;case"PLAID_ERROR":e=$.PLAID_AUTHENTICATION_FAILED,i=t.error_message||"Bank authentication failed. Please try again.",s=!0;break;default:t.error_message&&(i=t.error_message)}if(t.error_message){const a=t.error_message.toLowerCase();a.includes("not supported")||a.includes("unsupported")?(e=$.PLAID_BANK_NOT_SUPPORTED,i=K[e],s=!1,n="Try a different payment method"):(a.includes("expired")||a.includes("timeout"))&&(e=$.PLAID_TOKEN_EXPIRED,i=K[e],s=!0)}this.handleError({code:e,message:i,severity:tt[e],originalError:t,retryable:s,userAction:n}),this.isAuthenticating=!1},this.handleError=t=>{this.error=t,this.plaidError.emit({code:t.code,message:t.message,severity:t.severity,data:{originalError:t.originalError,retryable:t.retryable,userAction:t.userAction,retryCount:this.retryCount}}),console.error("Plaid error:",t),t.retryable&&this.retryCount<this.maxRetries&&this.scheduleRetry()},this.scheduleRetry=()=>{this.isRetrying||(this.isRetrying=!0,this.retryCount++,setTimeout((()=>{this.isRetrying=!1,this.clearError(),this.waitForStoreAndInitialize()}),this.retryDelay*this.retryCount))},this.clearError=()=>{this.error&&(this.error=null,this.retryCount=0)},this.syncWithStore=()=>{var t;const e=(null===(t=l.selectedPaymentMethod)||void 0===t?void 0:t.type)===D.PLAID;this.isSelected!==e&&(this.isSelected=e)}}onSelectionChange(t){var e;t&&(null===(e=l.selectedPaymentMethod)||void 0===e?void 0:e.type)!==D.PLAID&&(l.selectedPaymentMethod={type:D.PLAID}),!t||!this.plaidLink||this.publicToken||this.isAuthenticating||this.error||this.openPlaidLink()}componentDidRender(){this.scriptRef&&(this.scriptRef.onload=()=>{this.waitForStoreAndInitialize()},this.scriptRef.onerror=()=>{this.handleError({code:$.PLAID_SDK_LOAD_FAILED,message:K[$.PLAID_SDK_LOAD_FAILED],severity:tt[$.PLAID_SDK_LOAD_FAILED],retryable:!0,userAction:"Refresh the page and try again"})})}componentWillLoad(){var t;this.isSelected=(null===(t=l.selectedPaymentMethod)||void 0===t?void 0:t.type)===D.PLAID}async resolvePaymentMethod(){return this.publicToken?{token:this.publicToken,data:{type:"bank_account",plaid_public_token:this.publicToken}}:{validationError:!0}}async getPaymentToken(){return l.paymentToken}async handleSelectionClick(){if(this.isSelected=!0,l.selectedPaymentMethod={type:D.PLAID},this.error)return this.clearError(),void this.waitForStoreAndInitialize();!this.plaidLink||this.publicToken||this.isAuthenticating||this.openPlaidLink()}async setSelected(t){this.isSelected=t,t&&(l.selectedPaymentMethod={type:D.PLAID})}async isCurrentlySelected(){return this.isSelected}async deselect(){this.isSelected=!1}async reset(){this.publicToken=null,this.clearError(),this.isAuthenticating=!1,this.linkToken=null,this.plaidLink=null,this.retryCount=0,this.isRetrying=!1,this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null),this.abortController&&(this.abortController.abort(),this.abortController=null)}async isReadyForAuthentication(){return!(!this.plaidLink||!this.linkToken||this.isAuthenticating)}async retry(){this.error&&this.error.retryable&&(this.clearError(),this.waitForStoreAndInitialize())}async getErrorInfo(){return this.error}componentDidLoad(){const t=u("selectedPaymentMethod",this.syncWithStore);this.unsubscribeFromStore=t}disconnectedCallback(){this.unsubscribeFromStore&&this.unsubscribeFromStore(),this.timeoutId&&clearTimeout(this.timeoutId),this.abortController&&this.abortController.abort()}render(){if(!0!==l.bankAccountVerification)return this.hasLoggedDisabledWarning||(console.warn("[PlaidPaymentMethod] bank_account_verification is disabled. Component will not render."),this.hasLoggedDisabledWarning=!0),null;const e=t("img",{class:"plaid-logo-img",src:"data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQ4IiB2aWV3Qm94PSIwIDAgMjggMjkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgY2xhc3M9ImNzcy0xcmRhajhtIj48ZyBmaWxsPSIjMTExIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yNS43NjI5IDI2LjI2MjhMMjggMTcuNTMwOUwyNC45NjkxIDE0LjUwMDFMMjcuOTk5OSAxMS40NjkxTDI1Ljc2MjggMi43MzcwNkwxNy4wMzA5IDAuNUwxNC4wMDAxIDMuNTMxTDEwLjk2OSAwLjUwMDE0TDIuMjM3MDYgMi43MzczNEwwIDExLjQ2OTFMMy4wMzEyOCAxNC40OTk5TDAuMDAwMTQgMTcuNTMxTDIuMjM3MiAyNi4yNjI5TDEwLjk2OTEgMjguNUwxNC4wMDAxIDI1LjQ2OUwxNy4wMzEgMjguNDk5OUwyNS43NjI5IDI2LjI2MjhaTTE1LjczMjEgMjMuNzM3MUwxOC42MTg2IDIwLjg1MDVMMjIuMjkxMiAyNC41MjMzTDE3LjY5NTYgMjUuNzAwN0wxNS43MzIxIDIzLjczNzFaTTExLjExMzYgOS44ODE1NEwxNC4wMDAzIDYuOTk1MDJMMTYuODg2OCA5Ljg4MTRMMTQuMDAwMSAxMi43Njc5TDExLjExMzYgOS44ODE1NFpNMTIuMjY4MiAxNC41TDkuMzgxNTQgMTcuMzg2NUw2LjQ5NTAyIDE0LjVMOS4zODE1NCAxMS42MTM1TDEyLjI2ODIgMTQuNVpNMTguNjE4NyAxMS42MTMzTDIxLjUwNTMgMTQuNUwxOC42MTg2IDE3LjM4NjVMMTUuNzMyMSAxNC41TDE4LjYxODcgMTEuNjEzM1pNMTYuODg2NyAxOS4xMTg2TDE0LjAwMDEgMjIuMDA1MUwxMS4xMTM1IDE5LjExODVMMTQuMDAwMSAxNi4yMzE5TDE2Ljg4NjcgMTkuMTE4NlpNMTAuMzA0NCAyNS43MDA3TDUuNzA4NjQgMjQuNTIzM0w5LjM4MTU0IDIwLjg1MDRMMTIuMjY4MiAyMy43MzcxTDEwLjMwNDQgMjUuNzAwN1pNNC43NjMwOCAxNi4yMzE5TDcuNjQ5NiAxOS4xMTg1TDMuOTc2NyAyMi43OTE0TDIuNzk5MyAxOC4xOTU3TDQuNzYzMDggMTYuMjMxOVpNMy45NzY3IDYuMjA4MzZMNy42NDk3NCA5Ljg4MTRMNC43NjMwOCAxMi43NjgxTDIuNzk5MyAxMC44MDQxTDMuOTc2NyA2LjIwODM2Wk0xMi4yNjgzIDUuMjYyOTRMOS4zODE2OCA4LjE0OTZMNS43MDg5MiA0LjQ3NjdMMTAuMzA0NyAzLjI5OTNMMTIuMjY4MyA1LjI2Mjk0Wk0xNy42OTU5IDMuMjk5M0wyMi4yOTE1IDQuNDc2N0wxOC42MTg2IDguMTQ5NDZMMTUuNzMyMSA1LjI2Mjk0TDE3LjY5NTkgMy4yOTkzWk0yMy4yMzcyIDEyLjc2ODFMMjAuMzUwNSA5Ljg4MTRMMjQuMDIzMyA2LjIwODc4TDI1LjIwMDcgMTAuODA0NkwyMy4yMzcyIDEyLjc2ODFaTTI0LjAyMzMgMjIuNzkxNEwyMC4zNTA1IDE5LjExODZMMjMuMjM3MiAxNi4yMzIxTDI1LjIwMDcgMTguMTk1N0wyNC4wMjMzIDIyLjc5MTRaIj48L3BhdGg+PC9nPjwvc3ZnPgo=",alt:"Plaid",title:"Plaid",style:{display:"inline",width:"20px",height:"20px",marginLeft:"5px",marginTop:"-2px"}});return t(o,{class:"payment-method"},t("script",{src:"https://cdn.plaid.com/link/v2/stable/link-initialize.js",async:!0,ref:t=>this.scriptRef=t}),t("div",{title:"Pay with Plaid"},t("div",{onClick:t=>{t.preventDefault(),this.handleSelectionClick()}},"Pay with Bank Account ",e," "),(()=>this.error?t("div",{class:(this.error.severity===j.ERROR?"text-danger":this.error.severity===j.WARNING?"text-warning":"text-info")+" mt-2"},t("small",null,this.error.message),t("br",null),t("small",{class:"text-muted"},this.error.userAction,this.error.retryable&&this.retryCount<this.maxRetries&&t("span",null," • Auto-retry in progress..."))):null)(),(()=>this.error?null:this.isAuthenticating?t("div",{class:"text-info mt-2"},t("small",null,"Connecting to your bank...")):this.publicToken?t("div",{class:"text-success mt-2"},t("small",null,"✓ Bank account connected successfully")):!this.isSelected||this.publicToken||this.error||this.isAuthenticating?null:t("div",{class:"text-muted mt-2"},t("small",null,"Click to connect your bank account")))()))}static get watchers(){return{isSelected:["onSelectionChange"]}}},it=class{constructor(t){e(this,t),this.onPaymentMethodOptionClick=t=>e=>{e.preventDefault(),l.selectedPaymentMethod={id:t.id,type:t.type},l.paymentToken=t.id},this.isAllowedPaymentMethod=t=>!(t===D.SAVED_CARD&&l.disableCreditCard||t===D.SAVED_BANK_ACCOUNT&&l.disableBankAccount)}componentWillLoad(){l.paymentMethods.length||console.warn("No saved payment methods available."),l.disablePaymentMethodGroup&&console.warn("Payment method group is disabled.")}render(){return l.disablePaymentMethodGroup?null:t(o,null,t("div",{class:"saved-payment-methods"},l.paymentMethods.length?l.paymentMethods.filter((t=>this.isAllowedPaymentMethod(t.type))).map((e=>t("div",{class:"radio-list-item p-3",part:y,onClick:this.onPaymentMethodOptionClick(e)},t("form-control-radio",{name:"paymentMethodType",value:null==e?void 0:e.id,checked:l.paymentToken===(null==e?void 0:e.id),label:`${O[null==e?void 0:e.brand]||""} *${null==e?void 0:e.acct_last_four}`})))):null))}},st=t("img",{class:"sezzle-smart-button-logo-img",src:"https://media.sezzle.com/branding/2.0/Sezzle_Logo_FullColor.svg",alt:"Sezzle",style:{display:"inline",width:"80px",marginLeft:"5px",marginTop:"-5px"}}),nt=class{constructor(t){e(this,t),this.paymentMethodOptionSelected=i(this,"paymentMethodOptionSelected"),this.paymentMethodOptionId=D.SEZZLE,this.initializeSezzleCheckout=()=>{let t;this.sezzlePromise=new Promise((e=>{t=e}));const e=Number(l.paymentAmount),i=new(0,window.Checkout)({mode:"popup",publicKey:l.bnplProviderClientId,apiMode:l.bnplProviderMode,apiVersion:l.bnplProviderApiVersion});i.sezzleButtonElement=this.sezzleButtonRef,i.init({onClick:function(t){t.preventDefault(),i.startCheckout({checkout_url:l.bnplProviderCheckoutUrl})},onComplete:e=>t({bnpl:e.data}),onCancel:e=>t({bnpl:e.data}),onFailure:e=>t({bnpl:e.data})}),this.sezzleCheckout=i,this.installmentPlan=this.sezzleCheckout.getInstallmentPlan(e)}}componentDidRender(){this.scriptRef&&(this.scriptRef.onload=()=>{this.sezzleButtonRef=document.createElement("button"),this.initializeSezzleCheckout()})}async resolvePaymentMethod(t){return t.isValid?(this.sezzleButtonRef.click(),this.sezzlePromise):{validationError:!0}}async handleSelectionClick(){l.selectedPaymentMethod={type:D.SEZZLE},this.paymentMethodOptionSelected.emit(this.paymentMethodOptionId)}render(){var e,i;return l.bnplEnabled?t(o,{class:"payment-method"},t("script",{src:"https://checkout-sdk.sezzle.com/checkout.min.js",async:!0,ref:t=>this.scriptRef=t}),t("div",null,t("div",null,"Buy now, pay later with ",st),this.installmentPlan&&t("small",null,t("span",null,null===(e=this.installmentPlan)||void 0===e?void 0:e.installments.length)," ",t("span",null,this.installmentPlan.schedule," payments of")," ",t("span",{class:"fw-bold"},m(null===(i=this.installmentPlan)||void 0===i?void 0:i.installments[0].amountInCents))))):(console.warn("justifi-sezzle-payment-method: BNPL is not enabled for this account."),null)}};export{Z as justifi_apple_pay,W as justifi_checkout_summary,q as justifi_header,X as justifi_modular_checkout,et as justifi_plaid_payment_method,it as justifi_saved_payment_methods,nt as justifi_sezzle_payment_method}
@@ -0,0 +1 @@
1
+ import{h as t,r as s,c as e}from"./p-DwYM91AU.js";import{c as r,a as i,F as o}from"./p-DiJD6Iqx.js";import{f as n}from"./p-BS7OgSQe.js";import"./p-tGDdRx0W.js";import{C as a,a as u}from"./p-Cjcsf8ku.js";import{R as l,k as h}from"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{B as m}from"./p-Bqlcv3ZV.js";import{S as c}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{P as p}from"./p-C8QOezo8.js";import{m as d}from"./p-Ch9cTPyq.js";import{c as f,J as v}from"./p-CApezhx9.js";import{g as j,a as y}from"./p-D2muobcE.js";import{A as b}from"./p-C8yN3uBj.js";import{S as w}from"./p-c7MCfTgE.js";import"./p-BFTU3MAI.js";import"./p-HXpYMWUU.js";import"./p-BYsgavgS.js";import"./p-wtuY7MT2.js";import"./p-czPIvHxt.js";const g=t=>{const s=+t;return i().required("Amount is required").test("max-amount",`Refund amount cannot be more than payment amount: ${n(s)}`,(function(t){return+t<=+s})).test("min-amount","Refund amount must be greater than 0",(function(t){return+t>0}))},x=t=>{if(t)return r({amount:g(t),description:i().optional(),reason:i().optional().oneOf([l.customerRequest,l.duplicate,l.fraudulent],"Select a reason")})},C=[{label:"Select a reason",value:""},{label:"Customer requested a refund",value:"customer_request"},{label:"Customer was double-charged",value:"duplicate"},{label:"Payment was reported as fraud",value:"fraudulent"}],T=b();class B{async postRefund(t,s,e,r){return T.post({endpoint:`payments/${t}/refunds`,headers:{"Sub-Account":s},body:r,authToken:e})}}const A=()=>t("div",{class:"row gap-3"},t("div",{class:"col-12"},t(w,{width:"100%",height:"40px"}))),S=()=>t(c,null,t("div",{class:"row gap-5"},t(A,null),t(A,null),t(A,null))),I=class{constructor(t){s(this,t),this.errorEvent=e(this,"error-event"),this.submitEvent=e(this,"submit-event"),this.refundPayload={},this.displayAmount="",this.errors={},this.paymentLoading=!0,this.refundLoading=!1,this.hideSubmitButton=!1,this.inputHandler=(t,s)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[t]:s}))}}componentWillLoad(){f(),this.analytics=new v(this),this.initializeApi(),this.formController=new o(x())}handleError(t,s,e){this.errorEvent.emit({errorCode:t,message:s,severity:e})}checkAmount(t){return t>0}handleInvalidAmount(){this.submitDisabled=!0,this.handleError(u.INVALID_REFUND_AMOUNT,"Refund amount must be greater than 0",a.ERROR)}initializeFormController(){const t=this.refundPayload.amount,s=t?t.toString():"0";this.formController=new o(x(s)),this.formController.setInitialValues({amount:s}),this.formController.values.subscribe((t=>{this.refundPayload=Object.assign({},t)})),this.formController.errors.subscribe((t=>{this.errors=Object.assign({},t)}))}initializeApi(){this.paymentId&&this.authToken?d({id:this.paymentId,authToken:this.authToken,service:new p})({onSuccess:({payment:t})=>{this.refundPayload=new h({amount:t.amount_refundable})},onError:({error:t,code:s,severity:e})=>{this.handleError(s,t,e)},final:()=>{this.checkAmount(this.refundPayload.amount)?this.initializeFormController():this.handleInvalidAmount(),this.paymentLoading=!1}}):this.handleError(u.MISSING_PROPS,"Payment ID and Auth Token are required",a.ERROR)}async refundPayment(t){if(t&&t.preventDefault(),!await this.formController.validate())return;const s=(({authToken:t,accountId:s,paymentId:e,service:r})=>async({refundBody:i,onSuccess:o,onError:n,final:u})=>{var l;try{const u=await r.postRefund(e,s,t,i);if(u.error)return n({error:y(u.error),code:j(null===(l=u.error)||void 0===l?void 0:l.code),severity:a.ERROR});o(u)}catch(t){const s=j(null==t?void 0:t.code);return n({error:t.message||t,code:s,severity:a.ERROR})}finally{return u()}})({authToken:this.authToken,accountId:this.accountId,paymentId:this.paymentId,service:new B}),e=this.formController.values.getValue();return this.refundLoading=!0,new Promise((t=>{let r;s({refundBody:e,onSuccess:t=>{r=t},onError:({error:t,code:s,severity:e})=>{r=t,this.handleError(t,s,e)},final:()=>{this.submitEvent.emit({response:r}),this.submitDisabled=!0,this.refundLoading=!1,t(r.data)}})}))}render(){if(this.paymentLoading)return t(S,null);const s=this.formController.getInitialValues(),e=this.refundPayload.amount;return t(c,null,t("form",null,t("fieldset",null,t("div",{class:"row gy-3"},t("div",{class:"col-12"},t("form-control-monetary",{name:"amount",label:"Refund Amount",defaultValue:s.amount,inputHandler:this.inputHandler,errorText:this.errors.amount})),t("div",{class:"col-12"},t("form-control-select",{name:"reason",label:"Reason for refund (optional)",defaultValue:s.reason,inputHandler:this.inputHandler,options:C,errorText:this.errors.reason})),t("div",{class:"col-12"},t("form-control-textarea",{name:"description",label:"Note (optional)",defaultValue:s.description,inputHandler:this.inputHandler,maxLength:250,errorText:this.errors.description})),t("div",{class:"form-group d-flex flex-row-reverse"},t(m,{variant:"primary",type:"submit",onClick:this.refundPayment.bind(this),isLoading:this.paymentLoading||this.refundLoading,hidden:this.hideSubmitButton,disabled:this.submitDisabled},`Refund ${n(+e)}`))))))}};export{I as justifi_refund_payment}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as i}from"./p-DwYM91AU.js";import{C as r,a as o}from"./p-Cjcsf8ku.js";import{c as e,J as a}from"./p-CApezhx9.js";import{T as n}from"./p-MQxr_LMC.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{e as p}from"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as c,a as h}from"./p-D2muobcE.js";import{m,S as u}from"./p-BojLBYsY.js";import{S as d}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d as j}from"./p-DkOiS6Zr.js";import"./p-czPIvHxt.js";import"./p-C8yN3uBj.js";import"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-DOLBAxYf.js";import"./p-wtuY7MT2.js";const l=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=j,this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){e(),this.analytics=new a(this),this.initializeGetData()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetData()}initializeGetData(){this.initializeGetTerminals(),this.initializeGetSubAccounts()}initializeGetTerminals(){this.accountId&&this.authToken?this.getTerminals=(({id:t,authToken:s,service:i})=>async({params:o,onSuccess:e,onError:a})=>{var n,m;try{const u=await i.fetchTerminals(t,s,o);if(u.error)return a({error:h(u.error),code:c(null===(m=u.error)||void 0===m?void 0:m.code),severity:r.ERROR});{const t=Object.assign({},u.page_info);e({terminals:(null===(n=u.data)||void 0===n?void 0:n.map((t=>new p(t))))||[],pagingInfo:t})}}catch(t){const s=c(null==t?void 0:t.code);return a({error:t.message||t,code:s,severity:r.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new n}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:o.MISSING_PROPS,message:this.errorMessage,severity:r.ERROR}))}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=m({accountId:this.accountId,authToken:this.authToken,service:new u}))}render(){return i(d,{key:"34cb952a43c4ecfd904c3449a05895e10e673a95"},i("terminals-list-core",{key:"32d981b366889364c4f27a4351aab41ed7d085b5",getTerminals:this.getTerminals,getSubAccounts:this.getSubAccounts,"onError-event":this.handleErrorEvent,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{l as justifi_terminals_list}
@@ -0,0 +1 @@
1
+ import{r as s,h as t}from"./p-DwYM91AU.js";import{S as e}from"./p-BP2sTIQV.js";import{S as c}from"./p-c7MCfTgE.js";import"./p-wtuY7MT2.js";const r=class{constructor(t){s(this,t)}render(){return t(e,{key:"79c2def38d099c6c146b89b6d33f8b1ca403bace"},t(c,{key:"d73576f82a88f9282caebaeb66cf4c444e8318a6",component:this.component,height:this.height,width:this.width,className:this.class,styles:this.customStyle}))}};export{r as justifi_skeleton}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as e}from"./p-DwYM91AU.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as i,a}from"./p-Cjcsf8ku.js";import"./p-BpaE8q5f.js";import{p as r}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{T as o,a as h,b as c,c as n,d as p,e as d,f,g as m,h as u,i as b,j as g,k as y,l as j}from"./p-BTzt8N0l.js";import{T as l}from"./p-CZfYo5-1.js";import{p as k,a as C}from"./p-KPmnq8xf.js";import{o as S,g as v}from"./p-BOqOio4U.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";import"./p-wtuY7MT2.js";import"./p-B-0a8Xqm.js";import"./p-bolTb61p.js";import"./p-DOLBAxYf.js";const w=class{constructor(e){t(this,e),this.clickEvent=s(this,"click-event"),this.errorEvent=s(this,"error-event"),this.payouts=[],this.subAccounts=[],this.loading=!0,this.paging=r,this.pagingParams={},this.downloadCSV=t=>{this.getPayoutCSV({payoutId:t,onError:()=>{this.errorEvent.emit({errorCode:a.FETCH_ERROR,message:"Failed to download CSV",severity:i.ERROR})}})},this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:l.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:l.next})},this.rowClickHandler=t=>{const s=t.target.closest("tr"),e=s.dataset.rowEntityId;if(!e)return;if(s.querySelector("a")===t.target)return;const i=this.payouts.find((t=>t.id===e));this.clickEvent.emit({name:l.row,data:i})}}updateOnPropChange(){this.fetchData()}componentWillLoad(){this.payoutsTable=new o(this.payouts,this.columns,k,C(this.downloadCSV)),this.getPayouts&&this.getSubAccounts&&this.fetchData(),S("set",(()=>{this.pagingParams={}})),S("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}fetchData(){this.loading=!0,this.getPayouts({params:this.payoutParams,onSuccess:({payouts:t,pagingInfo:s})=>{this.payouts=t,this.paging=s,this.payoutsTable.collectionData=this.payouts,this.payoutsTable.columnKeys.includes("sub_account_name")?this.fetchSubAccounts():this.loading=!1},onError:({error:t,code:s,severity:e})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:s,message:t,severity:e}),this.loading=!1}})}async fetchSubAccounts(){this.getSubAccounts({params:this.subAccountParams,onSuccess:({subAccounts:t})=>{this.subAccounts=t,this.payouts=this.payouts.map((t=>{var s;return t.sub_account_name=null===(s=this.subAccounts.find((s=>s.id===t.account_id)))||void 0===s?void 0:s.name,t})),this.loading=!1},onError:({error:t,code:s,severity:e})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:s,message:t,severity:e}),this.loading=!1}})}get payoutParams(){const t=v();return Object.assign(Object.assign({},t),this.pagingParams)}get subAccountParams(){let t=this.payouts.map((t=>t.account_id));return{sub_account_id:[...new Set(t)].join(",")}}get entityId(){return this.payouts.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.payoutsTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return e(j,{key:"12ea39142a446522d219ae4504ab2cade5824b3f"},e(h,{key:"0ef8b5f3716776ee0fe41e9576a6c97728757142"},e(c,{key:"6024ecb321bf7d42a6940baefdab0492c87c77ab"},e(n,{key:"b80ac981c1f8ad5e06fc1c060961e82b47ac5501"},this.payoutsTable.columnData.map((t=>t)))),e(p,{key:"9b64e1e8af4fff2f78a8768361d9e3cb0397c493"},e(d,{key:"b28518a05714d5671cd094c2b8462c8fc1af5039",columnSpan:this.payoutsTable.columnKeys.length,isLoading:this.loading}),e(f,{key:"97845bb480292be454464092ebaddd90bd274821",isEmpty:this.showEmptyState,columnSpan:this.payoutsTable.columnKeys.length}),e(m,{key:"89b1918fc32806dbc786c6de23bc1d8ac4aa359b",columnSpan:this.payoutsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.payoutsTable.rowData.map(((t,s)=>e(u,{"data-test-id":"table-row","data-row-entity-id":this.entityId[s],onClick:this.rowClickHandler},t)))),this.paging&&e(b,{key:"bf545d589dfd579fcbfde145fee8e667478f2673"},e(g,{key:"05e52684f8923f0dfe0bd3fff3c8f72421ef6485"},e(y,{key:"967d53af83043748db6459f6cd7f153d9d713f37",colSpan:this.payoutsTable.columnData.length},e("pagination-menu",{key:"55e154366e2df871c3dcfdd4b93dcaa11da216eb",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})}))))))}static get watchers(){return{pagingParams:["updateOnPropChange"],getPayouts:["updateOnPropChange"],getSubAccounts:["updateOnPropChange"]}}};export{w as payouts_list_core}
@@ -0,0 +1 @@
1
+ import{r as s,c as t,h as i}from"./p-DwYM91AU.js";import{E as r}from"./p-BNqo3kt0.js";import{B as o}from"./p-BCPutgAi.js";import{m as p}from"./p-sCHf--Vc.js";import{C as e,a as h}from"./p-Cjcsf8ku.js";import{c as m,J as n}from"./p-CApezhx9.js";import"./p-wtuY7MT2.js";import"./p-C8yN3uBj.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";import"./p-HXpYMWUU.js";import"./p-BpaE8q5f.js";import"./p-BH0Xfn-F.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-D2muobcE.js";import"./p-czPIvHxt.js";const a=class{constructor(i){s(this,i),this.errorEvent=t(this,"error-event"),this.errorMessage=null,this.handleErrorEvent=s=>{this.errorMessage=s.detail.message,this.errorEvent.emit(s.detail)}}componentWillLoad(){m(),this.analytics=new n(this),this.initializeGetBusiness()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeGetBusiness(){if(!this.businessId||!this.authToken)return this.errorMessage="Invalid business id or auth token",void this.errorEvent.emit({errorCode:h.MISSING_PROPS,message:this.errorMessage,severity:e.ERROR});this.getBusiness=p({id:this.businessId,authToken:this.authToken,service:new o})}render(){return this.errorMessage?r(this.errorMessage):i("business-details-core",{getBusiness:this.getBusiness,"onError-event":this.handleErrorEvent})}};export{a as justifi_business_details}
@@ -0,0 +1 @@
1
+ import{r as s,c as i,h as t}from"./p-DwYM91AU.js";import{c as o,J as e}from"./p-CApezhx9.js";import{C as r,a as n}from"./p-Cjcsf8ku.js";import{m as p,a}from"./p-5aA7gjr5.js";import{B as h}from"./p-BCPutgAi.js";import{A as m}from"./p-C8yN3uBj.js";import"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import"./p-czPIvHxt.js";import"./p-D2muobcE.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";import"./p-HXpYMWUU.js";const d=m();class u{async postProvisioning(s,i,t){return d.post({endpoint:"entities/provisioning",body:{business_id:i,product_category:t},authToken:s})}}const c=class{constructor(t){s(this,t),this.errorEvent=i(this,"error-event"),this.allowOptionalFields=!1,this.formTitle="Business Information"}propChanged(){this.initializeApi()}componentWillLoad(){o(),this.analytics=new e(this),this.initializeApi()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeApi(){this.authToken&&this.businessId?(this.getBusiness=p({authToken:this.authToken,businessId:this.businessId,service:new h}),this.postProvisioning=a({authToken:this.authToken,businessId:this.businessId,product:"payment",service:new u})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:n.MISSING_PROPS,severity:r.ERROR})}render(){return t("justifi-payment-provisioning-core",{key:"41e96a931c082212f43bdd84dd5c948fac1eddfc",businessId:this.businessId,authToken:this.authToken,allowOptionalFields:this.allowOptionalFields,formTitle:this.formTitle,getBusiness:this.getBusiness,postProvisioning:this.postProvisioning})}static get watchers(){return{authToken:["propChanged"],businessId:["propChanged"]}}};export{c as justifi_payment_provisioning}
@@ -0,0 +1 @@
1
+ import{r as t,h as e}from"./p-DwYM91AU.js";import{B as a}from"./p-Bqlcv3ZV.js";import{ah as r,ai as s}from"./p-wtuY7MT2.js";const c=t=>{const e=["after_cursor","before_cursor"];return!!Object.keys(t).filter((t=>!e.includes(t))).length},d=class{constructor(e){t(this,e),this.showClearButton=!1}watchParamsHandler(t){this.showClearButton=c(t)}show(){this.menu.classList.add("show")}hide(){this.menu.classList.remove("show")}componentWillLoad(){this.showClearButton=c(this.params)}render(){return e("div",{key:"14b8c9b28e6db7921a0b504cdac9d09cc51e250c",class:"d-flex gap-2"},e("div",{key:"8017069d76200797bb796062c500f5139dd103e1",class:"dropdown pb-3"},e("button",{key:"12e81650b0c2649d3be74f82744ed6195af4bdae",type:"button dropdown-toggle",ref:t=>this.anchorButton=t,class:"btn btn-primary dropdown-toggle",part:r,"data-test-id":"open-filters-button","data-bs-toggle":"dropdown"},"Filters"),e("custom-popper",{key:"f123c078509a97e24499f909457cefa697c3f18d",offset:[20,10],strategy:"fixed",anchorRef:this.anchorButton,trigger:"click"},e("form",{key:"f983f848d4bebd40c734ecc7e44a28fa8bcae060",class:"dropdown-menu",part:s,"data-test-id":"filter-menu",ref:t=>this.menu=t,onSubmit:t=>t.preventDefault()},e("slot",{key:"22ab7f6e07726f2a92008937a7cd1a7dc0b95727"})))),e("div",{key:"51e56c9fea70c03e1738e5baacbdf88432cc78cb"},e(a,{key:"d33af17298a3fa68906ba8b490133db9b294c695",variant:"secondary",onClick:()=>this.clearParams(),hidden:!this.showClearButton,"data-test-id":"clear-filters-button"},"Clear Filters")))}static get watchers(){return{params:["watchParamsHandler"]}}};export{d as table_filters_menu}
@@ -0,0 +1 @@
1
+ import{r as e,h as a,H as t,c as l,g as s}from"./p-DwYM91AU.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import"./p-Cjcsf8ku.js";import{E as o}from"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{a as n}from"./p-CPpUGsw5.js";import"./p-XYgDHrVL.js";import{n as c}from"./p-BnjCmwMr.js";import{D as i,Z as r,G as d,ap as u,S as h,ay as b,c as m,l as f,b as p,U as v,a as y}from"./p-wtuY7MT2.js";import{s as k,e as x,o as _}from"./p-BS7OgSQe.js";import{S as T}from"./p-c7MCfTgE.js";import"./p-CZfYo5-1.js";import{F as g}from"./p-BuCKkdLM.js";import"./p-BYsgavgS.js";const w=class{constructor(a){e(this,a)}render(){return a("div",{key:"4daf6eadf7e1213c3534bd845c917af0b1ec1fec",class:"row gy-3"},a("div",{key:"9d7235d40a0884960948eaac7dc990e947bf5165",class:"col-12"},a("form-control-file",{key:"e0e3704079e20c86dacec668d27ca23ef981aa2f",name:"voided_check",label:"Voided Check",documentType:o.voidedCheck,inputHandler:this.inputHandler,onFileSelected:this.storeFiles,errorText:this.errors.voided_check,multiple:!0})),a("div",{key:"5c4c20191c6c54170896a9c0f893a7fe06ff6a70",class:"col-12"},a("form-control-file",{key:"6d4ac9d3a47952644bab5afe4b23332a56c04035",name:"bank_statement",label:"Bank Statement",documentType:o.bankStatement,inputHandler:this.inputHandler,onFileSelected:this.storeFiles,errorText:this.errors.bank_statement,multiple:!0})))}},H=class{constructor(a){e(this,a)}render(){var e,t,l,s,o,i;return a("div",{key:"951373cbaf604ec2f34364fd93ac9ccf666a4e58",class:"row gy-3"},a("div",{key:"a2fbc555aeb3b9bed12f032385ea9889482e6caf",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Bank Name",value:null===(e=this.defaultValue)||void 0===e?void 0:e.bank_name}):a("form-control-text",{name:"bank_name",label:"Bank Name",defaultValue:this.defaultValue.bank_name,errorText:this.errors.bank_name,inputHandler:this.inputHandler})),a("div",{key:"c05c9e185293799ee94cbd8bec3976d115469b00",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Nickname",value:null===(t=this.defaultValue)||void 0===t?void 0:t.nickname}):a("form-control-text",{name:"nickname",label:"Nickname",defaultValue:this.defaultValue.nickname,errorText:this.errors.nickname,inputHandler:this.inputHandler})),a("div",{key:"b3cc026a1c2079ddcd744d7557742ac98073f03c",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Owner Name",value:null===(l=this.defaultValue)||void 0===l?void 0:l.account_owner_name}):a("form-control-text",{name:"account_owner_name",label:"Account Owner Name",defaultValue:this.defaultValue.account_owner_name,errorText:this.errors.account_owner_name,inputHandler:this.inputHandler})),a("div",{key:"f3649a91a8af13374eb55f06ecc81e6e06bd4b01",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Type",value:null===(s=this.defaultValue)||void 0===s?void 0:s.account_type}):a("form-control-select",{name:"account_type",label:"Account Type",options:n,defaultValue:this.defaultValue.account_type,errorText:this.errors.account_type,inputHandler:this.inputHandler})),a("div",{key:"34eb7df603e1d7d9bb616c51057dd5da9a2e3e3f",class:"col-6"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Number",value:(null===(o=this.defaultValue)||void 0===o?void 0:o.account_number_last4)?`**** ${this.defaultValue.account_number_last4}`:""}):a("form-control-text",{name:"account_number",label:"Account Number",defaultValue:this.defaultValue.account_number,maxLength:17,errorText:this.errors.account_number,inputHandler:this.inputHandler,keyDownHandler:c,helpText:"Please copy the account number as shown on your statement/check. Do not include spaces or dashes."})),a("div",{key:"64897a96be65ddd311267e5ea1571993ab61787d",class:"col-6"},this.formDisabled?a("bank-account-read-only-value",{label:"Routing Number",value:(null===(i=this.defaultValue)||void 0===i?void 0:i.routing_number)||""}):a("form-control-text",{name:"routing_number",label:"Routing Number",defaultValue:this.defaultValue.routing_number,maxLength:9,errorText:this.errors.routing_number,inputHandler:this.inputHandler,keyDownHandler:c,helpText:"A valid routing number is nine digits. Please include any leading or trailing zeroes."})))}},N=class{constructor(a){e(this,a)}render(){var e,t,l,s,o,i,r;return a("div",{key:"80b2030f1c1840df293a5ec600fe16836b502647",class:"row gy-3"},a("div",{key:"5a28a5b515856da7808fc49cf0f775f8c4c71daa",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Bank Name",value:null===(e=this.defaultValue)||void 0===e?void 0:e.bank_name}):a("form-control-text",{name:"bank_name",label:"Bank Name",defaultValue:this.defaultValue.bank_name,errorText:this.errors.bank_name,inputHandler:this.inputHandler})),a("div",{key:"62761912ccf0ee5ba1e5c13cbb08cde9687d05bd",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Nickname",value:null===(t=this.defaultValue)||void 0===t?void 0:t.nickname}):a("form-control-text",{name:"nickname",label:"Nickname",defaultValue:this.defaultValue.nickname,errorText:this.errors.nickname,inputHandler:this.inputHandler})),a("div",{key:"04472a07096890a51d2e2db463f7040a389fd4e1",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Owner Name",value:null===(l=this.defaultValue)||void 0===l?void 0:l.account_owner_name}):a("form-control-text",{name:"account_owner_name",label:"Account Owner Name",defaultValue:this.defaultValue.account_owner_name,errorText:this.errors.account_owner_name,inputHandler:this.inputHandler})),a("div",{key:"c2caa8ddb2b1038efb49e3361eab760108a34308",class:"col-12"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Type",value:null===(s=this.defaultValue)||void 0===s?void 0:s.account_type}):a("form-control-select",{name:"account_type",label:"Account Type",options:n,defaultValue:this.defaultValue.account_type,errorText:this.errors.account_type,inputHandler:this.inputHandler})),a("div",{key:"2446720991bd2512f6bb8a779e47e526100dacb3",class:"col-3"},this.formDisabled?a("bank-account-read-only-value",{label:"Transit Number",value:(null===(o=this.defaultValue)||void 0===o?void 0:o.transit_number)||""}):a("form-control-text",{name:"transit_number",label:"Transit Number",defaultValue:this.defaultValue.transit_number,maxLength:5,errorText:this.errors.transit_number,inputHandler:this.inputHandler,keyDownHandler:c,helpText:"5 digits"})),a("div",{key:"98cda3809e604cc3e863f2d01698e217694b2550",class:"col-3"},this.formDisabled?a("bank-account-read-only-value",{label:"Institution Number",value:(null===(i=this.defaultValue)||void 0===i?void 0:i.institution_number)||""}):a("form-control-text",{name:"institution_number",label:"Institution Number",defaultValue:this.defaultValue.institution_number,maxLength:3,errorText:this.errors.institution_number,inputHandler:this.inputHandler,keyDownHandler:c,helpText:"3 digits"})),a("div",{key:"de285afb20fe922e3a8dd66727222e2f49567aae",class:"col-6"},this.formDisabled?a("bank-account-read-only-value",{label:"Account Number",value:(null===(r=this.defaultValue)||void 0===r?void 0:r.account_number_last4)?`**** ${this.defaultValue.account_number_last4}`:""}):a("form-control-text",{name:"account_number",label:"Account Number",defaultValue:this.defaultValue.account_number,maxLength:17,errorText:this.errors.account_number,inputHandler:this.inputHandler,keyDownHandler:c,helpText:"Please copy the account number as shown on your statement. Do not include spaces or dashes."})))}},j=class{constructor(a){e(this,a)}render(){return a("div",{key:"0d44d4aa265a5fd36ca30f1db072eb834f8bdf1b"},a("label",{key:"892e6dbdbff5d484df4dfb522f3db8968f46d7d4",class:"form-label",part:i},this.label),a("div",{key:"cd617e2302834ad67ebccd64e24d535b2cc19da8",part:i},this.value||""))}},A=class{constructor(a){e(this,a),this.documents=[],this.isLoading=!1}render(){return this.isLoading?a(T,{height:"50px"}):this.documents.length?a(t,null,a("div",{class:"card",part:r},a("div",{class:"card-body"},a("h5",{class:"card-title",part:d},"Documents Already on File"),a("div",{class:"table-responsive"},a("table",{class:"table table-sm table-borderless",part:u},a("thead",null,a("tr",null,a("th",{style:{width:"25%"},part:h,scope:"col"},"File Name"),a("th",{style:{width:"25%"},part:h,scope:"col"},"File Type"),a("th",{style:{width:"25%"},part:h,scope:"col"},"Document Type"),a("th",{style:{width:"25%"},part:h,scope:"col"},"Date Uploaded"))),a("tbody",null,this.documents.sort(((e,a)=>e.document_type.localeCompare(a.document_type))).map(((e,t)=>a("tr",{class:0===t?"border-bottom border-top":"border-bottom"},a("td",{part:b},e.file_name),a("td",{part:b},e.file_type),a("td",{part:b},k(e.document_type)),a("td",{part:b},`${x(e.created_at)} - ${_(e.created_at)}`))))))))),a("hr",null)):null}},D=class{constructor(a){e(this,a),this.formControlInput=l(this,"formControlInput"),this.formControlBlur=l(this,"formControlBlur"),this.fileSelected=l(this,"fileSelected"),this.isFocused=!1,this.handleFormControlInput=e=>{const a=e.target,t=a.getAttribute("name");this.inputHandler(t,a.value),this.formControlInput.emit({name:t,value:a.value})},this.changeHandler=()=>{const e=this.fileInput.files;e&&this.fileSelected.emit({fileList:e,document_type:this.documentType})}}componentDidLoad(){this.fileInput=this.el.querySelector("input")}get part(){let e=m;return this.errorText&&(e=p),this.disabled&&(e=v),this.isFocused&&(e=y),e}render(){return a(t,{key:"c1d92b4464500d430ad828ce374b864f0abf79dc"},a("div",{key:"7753e5875afe4c6da178a088721b62590e104039",class:"form-group d-flex flex-column"},a("div",{key:"35732250f1da24e5d8af9d6c984360402aa8c749",class:"d-flex align-items-start gap-2"},a("label",{key:"1dbdb4c74c82415714295d882a48ea3634265cae",part:f,class:"form-label",htmlFor:this.name},this.label),a("form-control-tooltip",{key:"132b4e5b01986aba2f1999db2f19373477b0af9d",helpText:this.helpText})),a("input",{key:"4c371be7c4d784fb7ba3dc3244aaab5ef7dea763",ref:e=>this.fileInput=e,type:"file",name:this.name,part:this.part,class:this.errorText?"form-control is-invalid":"form-control",multiple:this.multiple,disabled:this.disabled,onChange:this.changeHandler,onInput:this.handleFormControlInput,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()}}),a(g,{key:"f9c2a057b20ccf863331c90156a5a9df65bb85a6",errorText:this.errorText,name:this.name})))}get el(){return s(this)}};export{w as bank_account_document_form_inputs,H as bank_account_form_inputs,N as bank_account_form_inputs_canada,j as bank_account_read_only_value,A as business_documents_on_file,D as form_control_file}
@@ -0,0 +1 @@
1
+ import{r as e,h as a}from"./p-DwYM91AU.js";import{l as t}from"./p-Bde7dY9t.js";import{f as s,p as i,c as r}from"./p-Uqevvbqm.js";import{y as l,z as d,A as p,B as o}from"./p-wtuY7MT2.js";import{S as f}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import"./p-Cjcsf8ku.js";import{c}from"./p-BpaE8q5f.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import"./p-BFTU3MAI.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";const b=class{constructor(a){e(this,a),this.setParamsOnChange=(e,a)=>{s[e]=a}}componentWillLoad(){this.debouncedSetParamsOnChange=t.debounce(this.setParamsOnChange,300),Object.entries({terminal_id:this.terminalId,status:this.terminalStatus,terminal_order_id:this.terminalOrderId}).forEach((([e,a])=>{a&&(i[e]=a)}))}get terminalStatusOptions(){return[{label:"All",value:""},{label:"Connected",value:c.connected},{label:"Disconnected",value:c.disconnected},{label:"Unknown",value:c.unknown},{label:"Pending Configuration",value:c.pending_configuration},{label:"Archived",value:c.archived}]}render(){const e=Object.assign({},s);return a(f,{key:"572f99cbf9fe8b4b01a6e4e34575ba83f5c62f25"},a("table-filters-menu",{key:"21513ea58fa052e458af8a21691935cb9caed5f4",params:e,clearParams:r,part:l},a("div",{key:"6bfe4487288dacdb4c56651d7431cfffcf715755",class:"grid-cols-2 gap-3 p-1"},a("div",{key:"9cba47fa96feb4d8cde9a54a7a98023d9b470f7a",class:"p-2"},a("form-control-text",{key:"4cf78e13a31c8f6b7efeca735d31fd298c0f465a",name:"terminal_id",label:"Terminal ID",inputHandler:this.debouncedSetParamsOnChange,defaultValue:this.terminalId||s.terminal_id,disabled:!!this.terminalId,part:d})),a("div",{key:"1b3f105d54261c711b52d8730f99c7459c9d12e2",class:"p-2"},a("form-control-text",{key:"09f4d86fb281bd84c2a47446e4dc5b263c034d8e",name:"terminal_order_id",label:"Terminal Order ID",inputHandler:this.debouncedSetParamsOnChange,defaultValue:this.terminalOrderId||s.terminal_order_id,disabled:!!this.terminalOrderId,part:p})),a("div",{key:"fb373b529881adee6b2bf3e3e55be3246623b956",class:"p-2"},a("form-control-select",{key:"373348087fe077b04bd76fbd3cd3d5ab85ca77b8",name:"status",label:"Status",options:this.terminalStatusOptions,inputHandler:this.setParamsOnChange,defaultValue:this.terminalStatus||s.status||"",disabled:!!this.terminalStatus,part:o})))))}};export{b as justifi_terminals_list_filters}
@@ -0,0 +1 @@
1
+ import{r as a,h as e}from"./p-DwYM91AU.js";import{f as t,p as s,c as r}from"./p-BOqOio4U.js";import{m as d,n as f,o}from"./p-wtuY7MT2.js";import{S as c}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{c as i,a as p}from"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-HXpYMWUU.js";const b=class{constructor(e){a(this,e),this.setParamsOnChange=(a,e)=>{t[a]=e},this.handleDateInput=(a,e)=>{const t=i(e,{setEndOfDay:!0});this.setParamsOnChange(a,t)}}componentWillLoad(){Object.entries({created_after:this.createdAfter,created_before:this.createdBefore}).forEach((([a,e])=>{e&&(s[a]=e)}))}render(){const a=Object.assign({},t);return e(c,{key:"c9fe17cad3d56aa5f8c9ef6b23b90b77e378d256"},e("table-filters-menu",{key:"e5d55040d356e8aeb60419a52891deca0cb2940a",params:a,clearParams:r,part:d},e("div",{key:"a155ff5b6a89c233ad37a3697ed8ab7f03d22a9f",class:"grid-cols-2 gap-3 p-1"},e("div",{key:"e13495766b1d817a93606fb35ca6c2222c48d0e5",class:"p-2"},e("form-control-date",{key:"fc510fa12504d70efa1fc74a36f4a49b89fff4d4",name:"created_after",label:"Created After",inputHandler:this.handleDateInput,defaultValue:p(this.createdAfter,{showInputDate:!0})||p(t.created_after,{showInputDate:!0}),disabled:!!this.createdAfter,part:f})),e("div",{key:"dd521da828ccf3d26460130cbcb89d20822ff42d",class:"p-2"},e("form-control-date",{key:"091b8e21f62c6bad5b6e1e47fde86be51abcb25a",name:"created_before",label:"Created Before",inputHandler:this.handleDateInput,defaultValue:p(this.createdBefore,{showInputDate:!0})||p(t.created_before,{showInputDate:!0}),disabled:!!this.createdBefore,part:o})))))}};export{b as justifi_payouts_list_filters}