@justifi/webcomponents 6.6.0 → 6.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/dist/cjs/{Refund-BX0mjsAQ.js → GooglePay-BwiJ_80p.js} +415 -0
  2. package/dist/cjs/additional-questions-details_5.cjs.entry.js +2 -2
  3. package/dist/cjs/{badge-_nY1l5Rq.js → badge-Cc87HAsf.js} +1 -1
  4. package/dist/cjs/bank-account-document-form-inputs_8.cjs.entry.js +9 -8
  5. package/dist/cjs/bank-account-form.cjs.entry.js +4 -4
  6. package/dist/cjs/business-details-core.cjs.entry.js +3 -3
  7. package/dist/cjs/{business.service-Dffp64u6.js → business.service-q93NsTG_.js} +1 -1
  8. package/dist/cjs/{button-CARQPDm-.js → button-fUPGXjU_.js} +1 -1
  9. package/dist/cjs/card-form.cjs.entry.js +4 -4
  10. package/dist/cjs/{check-pkg-version-DZC7jOGP.js → check-pkg-version-cLAIX_H6.js} +2 -2
  11. package/dist/cjs/{checkout.service-C1HcsrjQ.js → checkout.service-CwelwhrT.js} +1 -1
  12. package/dist/cjs/checkouts-list-core.cjs.entry.js +8 -7
  13. package/dist/cjs/{checkouts-table-Bgqkaez4.js → checkouts-table-BBtqxG2F.js} +2 -2
  14. package/dist/cjs/custom-popper_2.cjs.entry.js +3 -3
  15. package/dist/cjs/{dispute.service-CJsWYMYk.js → dispute.service-q5ha39uN.js} +1 -1
  16. package/dist/cjs/form-alert_5.cjs.entry.js +1 -1
  17. package/dist/cjs/form-control-checkbox.cjs.entry.js +5 -5
  18. package/dist/cjs/form-control-date.cjs.entry.js +4 -4
  19. package/dist/cjs/{form-control-error-text-mhOq2Edp.js → form-control-error-text-Dg_65HGK.js} +1 -1
  20. package/dist/cjs/form-control-file-v2_2.cjs.entry.js +5 -5
  21. package/dist/cjs/{form-control-help-text-BoRpAoX6.js → form-control-help-text-tB5u1-5M.js} +1 -1
  22. package/dist/cjs/form-control-monetary-provisioning.cjs.entry.js +3 -3
  23. package/dist/cjs/form-control-monetary.cjs.entry.js +5 -5
  24. package/dist/cjs/form-control-number-masked_3.cjs.entry.js +4 -4
  25. package/dist/cjs/form-control-number.cjs.entry.js +5 -5
  26. package/dist/cjs/form-control-radio.cjs.entry.js +3 -3
  27. package/dist/cjs/form-control-select_2.cjs.entry.js +6 -6
  28. package/dist/cjs/{get-payment-details-BblcGN2B.js → get-payment-details-DidIAK2i.js} +2 -2
  29. package/dist/cjs/{get-subaccounts-z4dNQDjx.js → get-subaccounts-BE_wcfM7.js} +2 -2
  30. package/dist/cjs/gross-payment-chart-core.cjs.entry.js +4 -4
  31. package/dist/cjs/{header-1-CBO8uDuZ.js → header-1-Bqejh9no.js} +1 -1
  32. package/dist/cjs/{header-3-CPWtI1t0.js → header-3-DQ649Me2.js} +1 -1
  33. package/dist/cjs/hidden-input_2.cjs.entry.js +7 -7
  34. package/dist/cjs/{index-C2ITzalN.js → index-CajjbB9t.js} +1 -0
  35. package/dist/cjs/index.cjs.js +1 -1
  36. package/dist/cjs/{insurance-state-BMHITXoD.js → insurance-state-DsGnIHMM.js} +1 -1
  37. package/dist/cjs/internal-tokenize-payment-method_7.cjs.entry.js +25 -26
  38. package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +12 -11
  39. package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +9 -9
  40. package/dist/cjs/{justifi-apple-pay_7.cjs.entry.js → justifi-apple-pay_8.cjs.entry.js} +905 -258
  41. package/dist/cjs/justifi-bank-account-billing-form-simple_3.cjs.entry.js +4 -4
  42. package/dist/cjs/justifi-business-details.cjs.entry.js +7 -6
  43. package/dist/cjs/justifi-business-form.cjs.entry.js +9 -8
  44. package/dist/cjs/justifi-checkout.cjs.entry.js +15 -16
  45. package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +26 -12
  46. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +11 -10
  47. package/dist/cjs/justifi-details.cjs.entry.js +2 -2
  48. package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +1 -1
  49. package/dist/cjs/justifi-dispute-management.cjs.entry.js +6 -5
  50. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +12 -11
  51. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +6 -5
  52. package/dist/cjs/justifi-order-terminals.cjs.entry.js +12 -11
  53. package/dist/cjs/justifi-payment-details.cjs.entry.js +8 -7
  54. package/dist/cjs/justifi-payment-provisioning-core.cjs.entry.js +2 -2
  55. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +5 -4
  56. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +10 -9
  57. package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +3 -3
  58. package/dist/cjs/justifi-payments-list.cjs.entry.js +11 -10
  59. package/dist/cjs/justifi-payout-details.cjs.entry.js +8 -7
  60. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +10 -9
  61. package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +3 -3
  62. package/dist/cjs/justifi-payouts-list.cjs.entry.js +12 -11
  63. package/dist/cjs/justifi-refund-payment.cjs.entry.js +13 -12
  64. package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +2 -2
  65. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +10 -11
  66. package/dist/cjs/justifi-skeleton.cjs.entry.js +3 -3
  67. package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +13 -12
  68. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +9 -8
  69. package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +9 -8
  70. package/dist/cjs/justifi-terminals-list.cjs.entry.js +11 -10
  71. package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +1 -1
  72. package/dist/cjs/loader.cjs.js +1 -1
  73. package/dist/cjs/owner-form-core_2.cjs.entry.js +2 -2
  74. package/dist/cjs/{package-CkO7M9IQ.js → package-C9E_BIbT.js} +1 -1
  75. package/dist/cjs/pagination-menu.cjs.entry.js +1 -1
  76. package/dist/cjs/{parts-Pb06tUMp.js → parts-BVbaniVM.js} +6 -0
  77. package/dist/cjs/payment-details-core.cjs.entry.js +16 -15
  78. package/dist/cjs/payment-method-option.cjs.entry.js +2 -2
  79. package/dist/cjs/{payment.service-BZatGHKc.js → payment.service-CyHFdJ7n.js} +1 -1
  80. package/dist/cjs/payments-list-core.cjs.entry.js +9 -8
  81. package/dist/cjs/{payments-status-t4fVj8f9.js → payments-status-BP4u31jU.js} +1 -1
  82. package/dist/cjs/{payments-table-CaJt-yMH.js → payments-table-CWXVhECV.js} +2 -2
  83. package/dist/cjs/payout-details-core.cjs.entry.js +9 -9
  84. package/dist/cjs/{payout.service-DbgLWhwh.js → payout.service-Half-hdB.js} +1 -1
  85. package/dist/cjs/payouts-list-core.cjs.entry.js +9 -8
  86. package/dist/cjs/{payouts-status-pIO9qZG6.js → payouts-status-CM5Zy-0J.js} +1 -1
  87. package/dist/cjs/{payouts-table-DZv0WnTS.js → payouts-table-ZLTcfkUm.js} +2 -2
  88. package/dist/cjs/{skeleton-BF3HGL9X.js → skeleton-B8dzxFFr.js} +1 -1
  89. package/dist/cjs/{spinner-BBdv3Iq1.js → spinner-jHyLNCGO.js} +1 -1
  90. package/dist/cjs/{table-CfBpaApw.js → table-CrtpRwGN.js} +2 -2
  91. package/dist/cjs/table-filters-menu.cjs.entry.js +3 -3
  92. package/dist/cjs/terminal-orders-list-core.cjs.entry.js +8 -7
  93. package/dist/cjs/{terminal-orders-table-F-ZFUBwH.js → terminal-orders-table-DT53anT3.js} +5 -5
  94. package/dist/cjs/terminal-quantity-selector.cjs.entry.js +2 -2
  95. package/dist/cjs/{terminal.service-KC8wBTJJ.js → terminal.service-CFt55QNO.js} +1 -1
  96. package/dist/cjs/terminals-list-core.cjs.entry.js +8 -7
  97. package/dist/cjs/{terminals-table-D7sf_DBN.js → terminals-table-DahpSz98.js} +2 -2
  98. package/dist/cjs/{utils-Cjq3ZCad.js → utils-CMiA4X7s.js} +1 -1
  99. package/dist/cjs/webcomponents.cjs.js +1 -1
  100. package/dist/collection/api/GooglePay.js +181 -0
  101. package/dist/collection/api/index.js +2 -0
  102. package/dist/collection/api/services/google-pay.service.js +241 -0
  103. package/dist/collection/collection-manifest.json +1 -0
  104. package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +2 -2
  105. package/dist/collection/components/checkout/card-form/card-form.js +2 -2
  106. package/dist/collection/components/checkout/checkout.js +2 -2
  107. package/dist/collection/components/checkout/save-new-payment-method.js +1 -1
  108. package/dist/collection/components/checkout/saved-payment-method.js +1 -1
  109. package/dist/collection/components/checkouts-list/checkouts-list-core.js +1 -1
  110. package/dist/collection/components/checkouts-list/checkouts-list-filters.js +72 -2
  111. package/dist/collection/components/checkouts-list/checkouts-list.js +1 -1
  112. package/dist/collection/components/dispute-management/dispute-management-core.js +1 -1
  113. package/dist/collection/components/dispute-management/dispute-management.js +1 -1
  114. package/dist/collection/components/dispute-management/dispute-notification.js +2 -2
  115. package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +1 -1
  116. package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +1 -1
  117. package/dist/collection/components/dispute-management/dispute-response/customer-details.js +1 -1
  118. package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
  119. package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +1 -1
  120. package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +1 -1
  121. package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +1 -1
  122. package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +1 -1
  123. package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +1 -1
  124. package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +1 -1
  125. package/dist/collection/components/filters/table-filters-menu.js +1 -1
  126. package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +1 -1
  127. package/dist/collection/components/modular-checkout/ModularCheckout.js +1 -0
  128. package/dist/collection/components/modular-checkout/modular-checkout.js +44 -6
  129. package/dist/collection/components/modular-checkout/sub-components/bank-account-billing-form-simple.js +1 -1
  130. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +2 -2
  131. package/dist/collection/components/modular-checkout/sub-components/card-billing-form-simple.js +1 -1
  132. package/dist/collection/components/modular-checkout/sub-components/card-form.js +2 -2
  133. package/dist/collection/components/modular-checkout/sub-components/google-pay-skeleton.js +10 -0
  134. package/dist/collection/components/modular-checkout/sub-components/google-pay.js +609 -0
  135. package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +1 -1
  136. package/dist/collection/components/modular-checkout/sub-components/summary.js +1 -1
  137. package/dist/collection/components/order-terminals/order-terminals.js +1 -1
  138. package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +1 -1
  139. package/dist/collection/components/payment-details/payment-details-core.js +8 -8
  140. package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +1 -1
  141. package/dist/collection/components/payments-list/payments-list-core.js +1 -1
  142. package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
  143. package/dist/collection/components/payments-list/payments-list.js +1 -1
  144. package/dist/collection/components/payout-details/payout-details-core.js +3 -3
  145. package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +1 -1
  146. package/dist/collection/components/payouts-list/payouts-list-core.js +1 -1
  147. package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
  148. package/dist/collection/components/payouts-list/payouts-list.js +1 -1
  149. package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +1 -1
  150. package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
  151. package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +1 -1
  152. package/dist/collection/components/terminals-list/terminals-list-core.js +1 -1
  153. package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
  154. package/dist/collection/components/terminals-list/terminals-list.js +1 -1
  155. package/dist/collection/components/tokenize-payment-method/internal-tokenize-payment-method.js +1 -1
  156. package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +1 -1
  157. package/dist/collection/store/checkout.store.js +4 -0
  158. package/dist/collection/styles/parts.js +3 -0
  159. package/dist/collection/ui-components/custom-popper/custom-popper.js +2 -2
  160. package/dist/collection/ui-components/form/form-control-checkbox.js +2 -2
  161. package/dist/collection/ui-components/form/form-control-date.js +2 -2
  162. package/dist/collection/ui-components/form/form-control-file-v2.js +1 -1
  163. package/dist/collection/ui-components/form/form-control-file.js +2 -2
  164. package/dist/collection/ui-components/form/form-control-monetary.js +2 -2
  165. package/dist/collection/ui-components/form/form-control-number-masked.js +2 -2
  166. package/dist/collection/ui-components/form/form-control-number.js +2 -2
  167. package/dist/collection/ui-components/form/form-control-radio.js +2 -2
  168. package/dist/collection/ui-components/form/form-control-select.js +2 -2
  169. package/dist/collection/ui-components/form/form-control-text.js +2 -2
  170. package/dist/collection/ui-components/form/form-control-textarea.js +2 -2
  171. package/dist/collection/ui-components/form/hidden-input.js +1 -1
  172. package/dist/collection/ui-components/form/iframe-input.js +3 -3
  173. package/dist/collection/ui-components/google-pay-button.js +251 -0
  174. package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +1 -1
  175. package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +1 -1
  176. package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +1 -1
  177. package/dist/docs.json +727 -102
  178. package/dist/esm/{Refund-DDWRtCuX.js → GooglePay-NNHE-OLJ.js} +405 -1
  179. package/dist/esm/additional-questions-details_5.entry.js +2 -2
  180. package/dist/esm/{badge-BWd10d-w.js → badge-DtrH25ss.js} +1 -1
  181. package/dist/esm/bank-account-document-form-inputs_8.entry.js +8 -7
  182. package/dist/esm/bank-account-form.entry.js +4 -4
  183. package/dist/esm/business-details-core.entry.js +3 -3
  184. package/dist/esm/{business.service-CmSijtcP.js → business.service-BrUSam2T.js} +1 -1
  185. package/dist/esm/{button-BDwVDLs-.js → button-Bpf3VX8Q.js} +1 -1
  186. package/dist/esm/card-form.entry.js +4 -4
  187. package/dist/esm/{check-pkg-version-B83yUQEx.js → check-pkg-version-o2X_8wJ4.js} +2 -2
  188. package/dist/esm/{checkout.service-E60GnrZv.js → checkout.service-Bxt1qPaY.js} +1 -1
  189. package/dist/esm/checkouts-list-core.entry.js +8 -7
  190. package/dist/esm/{checkouts-table-BVWL1wN9.js → checkouts-table-CB4GdlcZ.js} +2 -2
  191. package/dist/esm/custom-popper_2.entry.js +3 -3
  192. package/dist/esm/{dispute.service-CAZJigrO.js → dispute.service-DYRYxxaT.js} +1 -1
  193. package/dist/esm/form-alert_5.entry.js +1 -1
  194. package/dist/esm/form-control-checkbox.entry.js +5 -5
  195. package/dist/esm/form-control-date.entry.js +4 -4
  196. package/dist/esm/{form-control-error-text-BYooqu0N.js → form-control-error-text-BZYykCDp.js} +1 -1
  197. package/dist/esm/form-control-file-v2_2.entry.js +5 -5
  198. package/dist/esm/{form-control-help-text-CF1UA5Sl.js → form-control-help-text-D-p66Yxr.js} +1 -1
  199. package/dist/esm/form-control-monetary-provisioning.entry.js +3 -3
  200. package/dist/esm/form-control-monetary.entry.js +5 -5
  201. package/dist/esm/form-control-number-masked_3.entry.js +4 -4
  202. package/dist/esm/form-control-number.entry.js +5 -5
  203. package/dist/esm/form-control-radio.entry.js +3 -3
  204. package/dist/esm/form-control-select_2.entry.js +6 -6
  205. package/dist/esm/{get-payment-details-Dg5WRkOM.js → get-payment-details-BJ1PLhJZ.js} +1 -1
  206. package/dist/esm/{get-subaccounts-CbxzednA.js → get-subaccounts-CzGHjlUF.js} +1 -1
  207. package/dist/esm/gross-payment-chart-core.entry.js +4 -4
  208. package/dist/esm/{header-1-CzkA4zNY.js → header-1-WwkF5F9y.js} +1 -1
  209. package/dist/esm/{header-3-eIE1RpMN.js → header-3-C5jS39cE.js} +1 -1
  210. package/dist/esm/hidden-input_2.entry.js +7 -7
  211. package/dist/esm/{index-DCIW8z1f.js → index-DkoufM1t.js} +1 -0
  212. package/dist/esm/index.js +1 -1
  213. package/dist/esm/{insurance-state-By2QaBZo.js → insurance-state-C11WKZU6.js} +1 -1
  214. package/dist/esm/internal-tokenize-payment-method_7.entry.js +14 -15
  215. package/dist/esm/justifi-additional-questions-form-step_9.entry.js +6 -5
  216. package/dist/esm/justifi-additional-statement_8.entry.js +9 -9
  217. package/dist/esm/{justifi-apple-pay_7.entry.js → justifi-apple-pay_8.entry.js} +788 -142
  218. package/dist/esm/justifi-bank-account-billing-form-simple_3.entry.js +4 -4
  219. package/dist/esm/justifi-business-details.entry.js +7 -6
  220. package/dist/esm/justifi-business-form.entry.js +9 -8
  221. package/dist/esm/justifi-checkout.entry.js +8 -9
  222. package/dist/esm/justifi-checkouts-list-filters.entry.js +19 -5
  223. package/dist/esm/justifi-checkouts-list.entry.js +10 -9
  224. package/dist/esm/justifi-details.entry.js +2 -2
  225. package/dist/esm/justifi-dispute-management-core.entry.js +1 -1
  226. package/dist/esm/justifi-dispute-management.entry.js +6 -5
  227. package/dist/esm/justifi-dispute-notification_3.entry.js +12 -11
  228. package/dist/esm/justifi-gross-payment-chart.entry.js +6 -5
  229. package/dist/esm/justifi-order-terminals.entry.js +9 -8
  230. package/dist/esm/justifi-payment-details.entry.js +8 -7
  231. package/dist/esm/justifi-payment-provisioning-core.entry.js +2 -2
  232. package/dist/esm/justifi-payment-provisioning.entry.js +5 -4
  233. package/dist/esm/justifi-payment-transactions-list.entry.js +9 -8
  234. package/dist/esm/justifi-payments-list-filters.entry.js +3 -3
  235. package/dist/esm/justifi-payments-list.entry.js +10 -9
  236. package/dist/esm/justifi-payout-details.entry.js +7 -6
  237. package/dist/esm/justifi-payout-transactions-list.entry.js +9 -8
  238. package/dist/esm/justifi-payouts-list-filters.entry.js +3 -3
  239. package/dist/esm/justifi-payouts-list.entry.js +11 -10
  240. package/dist/esm/justifi-refund-payment.entry.js +9 -8
  241. package/dist/esm/justifi-saved-payment-method.entry.js +2 -2
  242. package/dist/esm/justifi-season-interruption-insurance.entry.js +7 -8
  243. package/dist/esm/justifi-skeleton.entry.js +3 -3
  244. package/dist/esm/justifi-terminal-orders-list-filters.entry.js +5 -4
  245. package/dist/esm/justifi-terminal-orders-list.entry.js +8 -7
  246. package/dist/esm/justifi-terminals-list-filters.entry.js +4 -3
  247. package/dist/esm/justifi-terminals-list.entry.js +10 -9
  248. package/dist/esm/justifi-tokenize-payment-method.entry.js +1 -1
  249. package/dist/esm/loader.js +1 -1
  250. package/dist/esm/owner-form-core_2.entry.js +2 -2
  251. package/dist/esm/{package-CdVle3mx.js → package-Dr8Z8wfP.js} +1 -1
  252. package/dist/esm/pagination-menu.entry.js +1 -1
  253. package/dist/esm/{parts-QmGrQis7.js → parts-sA8HBfkI.js} +4 -1
  254. package/dist/esm/payment-details-core.entry.js +15 -14
  255. package/dist/esm/payment-method-option.entry.js +2 -2
  256. package/dist/esm/{payment.service-CWc5BPv-.js → payment.service-BoGemgMw.js} +1 -1
  257. package/dist/esm/payments-list-core.entry.js +9 -8
  258. package/dist/esm/{payments-status-BdCVusHE.js → payments-status-CADg1cD0.js} +1 -1
  259. package/dist/esm/{payments-table-9rC3BvV0.js → payments-table-C6zHWwGO.js} +2 -2
  260. package/dist/esm/payout-details-core.entry.js +9 -9
  261. package/dist/esm/{payout.service-iBVqRzf_.js → payout.service-BSG50wqN.js} +1 -1
  262. package/dist/esm/payouts-list-core.entry.js +9 -8
  263. package/dist/esm/{payouts-status-DhowllYh.js → payouts-status-4VDQvaYV.js} +1 -1
  264. package/dist/esm/{payouts-table-Ci_J6mmU.js → payouts-table-BU5XbzB9.js} +2 -2
  265. package/dist/esm/{skeleton-BX70wCwq.js → skeleton-Dtt56Fl3.js} +1 -1
  266. package/dist/esm/{spinner-CcDNFgNu.js → spinner-DikooWuI.js} +1 -1
  267. package/dist/esm/{table-KZoMaoUh.js → table-1hqe6s5m.js} +2 -2
  268. package/dist/esm/table-filters-menu.entry.js +3 -3
  269. package/dist/esm/terminal-orders-list-core.entry.js +8 -7
  270. package/dist/esm/{terminal-orders-table-BGiWS5cM.js → terminal-orders-table-BsVBelxB.js} +3 -3
  271. package/dist/esm/terminal-quantity-selector.entry.js +2 -2
  272. package/dist/esm/{terminal.service-CxSKhtwB.js → terminal.service-YKfi6Mr9.js} +1 -1
  273. package/dist/esm/terminals-list-core.entry.js +8 -7
  274. package/dist/esm/{terminals-table-DROFEdyn.js → terminals-table-CXJTn-0I.js} +2 -2
  275. package/dist/esm/{utils-C1PX_3uA.js → utils-CgFsPVsv.js} +1 -1
  276. package/dist/esm/webcomponents.js +1 -1
  277. package/dist/module/Analytics.js +2 -0
  278. package/dist/module/ApplePay.js +121 -0
  279. package/dist/module/GooglePay.js +184 -0
  280. package/dist/module/ModularCheckout.js +1 -0
  281. package/dist/module/additional-statement.js +1 -1
  282. package/dist/module/apple-pay.js +1 -120
  283. package/dist/module/bank-account-billing-form-simple.js +1 -1
  284. package/dist/module/bank-account-document-inputs.js +2 -0
  285. package/dist/module/bank-account-form.js +2 -2
  286. package/dist/module/bank-account.js +2 -2
  287. package/dist/module/business-bank-account-form-step.js +2 -0
  288. package/dist/module/business-terms-conditions-form-step.js +2 -0
  289. package/dist/module/business.service.js +2 -0
  290. package/dist/module/cancellation-policy.js +1 -1
  291. package/dist/module/card-billing-form-simple.js +1 -1
  292. package/dist/module/card-form.js +2 -2
  293. package/dist/module/card-form2.js +2 -2
  294. package/dist/module/checkout.service.js +2 -0
  295. package/dist/module/checkout.store.js +4 -0
  296. package/dist/module/checkouts-list-core2.js +4 -2
  297. package/dist/module/custom-popper2.js +2 -2
  298. package/dist/module/customer-details.js +1 -1
  299. package/dist/module/dispute-management-core.js +1 -1
  300. package/dist/module/dispute-notification.js +2 -2
  301. package/dist/module/dispute-response-actions.js +2 -0
  302. package/dist/module/dispute-response-core.js +1 -1
  303. package/dist/module/dispute-response.js +1 -1
  304. package/dist/module/duplicate-charge.js +1 -1
  305. package/dist/module/electronic-evidence.js +1 -1
  306. package/dist/module/form-control-checkbox2.js +2 -2
  307. package/dist/module/form-control-date2.js +2 -2
  308. package/dist/module/form-control-file-v22.js +1 -1
  309. package/dist/module/form-control-file2.js +2 -2
  310. package/dist/module/form-control-monetary2.js +2 -2
  311. package/dist/module/form-control-number-masked2.js +2 -2
  312. package/dist/module/form-control-number.js +2 -2
  313. package/dist/module/form-control-radio2.js +2 -2
  314. package/dist/module/form-control-select2.js +2 -2
  315. package/dist/module/form-control-text2.js +2 -2
  316. package/dist/module/form-control-textarea2.js +2 -2
  317. package/dist/module/get-payment-details.js +2 -0
  318. package/dist/module/get-subaccounts.js +2 -0
  319. package/dist/module/google-pay.js +782 -0
  320. package/dist/module/gross-payment-chart-core2.js +1 -1
  321. package/dist/module/hidden-input2.js +1 -1
  322. package/dist/module/iframe-input2.js +3 -3
  323. package/dist/module/internal-tokenize-payment-method2.js +3 -1
  324. package/dist/module/justifi-business-form.js +2 -0
  325. package/dist/module/justifi-button2.js +1 -1
  326. package/dist/module/justifi-checkout.js +46 -40
  327. package/dist/module/justifi-checkouts-list-filters.js +37 -8
  328. package/dist/module/justifi-checkouts-list.js +3 -1
  329. package/dist/module/justifi-dispute-management.js +1 -1
  330. package/dist/module/justifi-google-pay.d.ts +11 -0
  331. package/dist/module/justifi-google-pay.js +6 -0
  332. package/dist/module/justifi-gross-payment-chart.js +2 -0
  333. package/dist/module/justifi-header2.js +1 -1
  334. package/dist/module/justifi-order-terminals.js +3 -1
  335. package/dist/module/justifi-payment-provisioning.js +2 -0
  336. package/dist/module/justifi-payment-transactions-list.js +5 -3
  337. package/dist/module/justifi-payments-list-filters.js +4 -4
  338. package/dist/module/justifi-payments-list.js +3 -1
  339. package/dist/module/justifi-payout-details.js +2 -0
  340. package/dist/module/justifi-payout-transactions-list.js +5 -3
  341. package/dist/module/justifi-payouts-list-filters.js +4 -4
  342. package/dist/module/justifi-payouts-list.js +3 -1
  343. package/dist/module/justifi-refund-payment.js +2 -0
  344. package/dist/module/justifi-saved-payment-method.js +1 -1
  345. package/dist/module/justifi-season-interruption-insurance.js +2 -0
  346. package/dist/module/justifi-skeleton.js +1 -1
  347. package/dist/module/justifi-terminal-orders-list-filters.js +6 -4
  348. package/dist/module/justifi-terminal-orders-list.js +3 -1
  349. package/dist/module/justifi-terminals-list-filters.js +4 -2
  350. package/dist/module/justifi-terminals-list.js +3 -1
  351. package/dist/module/justifi-tokenize-payment-method.js +1 -1
  352. package/dist/module/modular-checkout.js +46 -6
  353. package/dist/module/package.js +1 -1
  354. package/dist/module/parts.js +4 -1
  355. package/dist/module/payment-details-core2.js +10 -8
  356. package/dist/module/payment-method-option.js +1 -1
  357. package/dist/module/payment.service.js +2 -0
  358. package/dist/module/payments-list-core2.js +5 -3
  359. package/dist/module/payout-details-core2.js +3 -3
  360. package/dist/module/payout.service.js +2 -0
  361. package/dist/module/payouts-list-core2.js +5 -3
  362. package/dist/module/plaid.service.js +2 -0
  363. package/dist/module/product-or-service.js +1 -1
  364. package/dist/module/refund-policy.js +1 -1
  365. package/dist/module/save-new-payment-method.js +1 -1
  366. package/dist/module/shipping-details.js +1 -1
  367. package/dist/module/summary.js +1 -1
  368. package/dist/module/table-filters-menu2.js +2 -2
  369. package/dist/module/table.js +1 -1
  370. package/dist/module/terminal-orders-list-core2.js +5 -3
  371. package/dist/module/terminal-quantity-selector2.js +1 -1
  372. package/dist/module/terminal.service.js +2 -0
  373. package/dist/module/terminals-list-core2.js +4 -2
  374. package/dist/module/utils2.js +1 -1
  375. package/dist/types/api/Checkout.d.ts +5 -0
  376. package/dist/types/api/GooglePay.d.ts +271 -0
  377. package/dist/types/api/index.d.ts +2 -0
  378. package/dist/types/api/services/google-pay.service.d.ts +60 -0
  379. package/dist/types/components/checkout/checkout.d.ts +1 -0
  380. package/dist/types/components/checkouts-list/checkouts-list-filters.d.ts +5 -0
  381. package/dist/types/components/modular-checkout/ModularCheckout.d.ts +2 -1
  382. package/dist/types/components/modular-checkout/modular-checkout.d.ts +5 -0
  383. package/dist/types/components/modular-checkout/sub-components/google-pay-skeleton.d.ts +6 -0
  384. package/dist/types/components/modular-checkout/sub-components/google-pay.d.ts +59 -0
  385. package/dist/types/components.d.ts +146 -0
  386. package/dist/types/store/checkout.store.d.ts +1 -0
  387. package/dist/types/styles/parts.d.ts +3 -0
  388. package/dist/types/ui-components/google-pay-button.d.ts +18 -0
  389. package/dist/webcomponents/index.esm.js +1 -1
  390. package/dist/webcomponents/p-016b3e4c.entry.js +1 -0
  391. package/dist/webcomponents/{p-fdcb24aa.entry.js → p-062fcfd5.entry.js} +1 -1
  392. package/dist/webcomponents/p-06cae9e2.entry.js +1 -0
  393. package/dist/webcomponents/p-06f81525.entry.js +1 -0
  394. package/dist/webcomponents/{p-3482ab40.entry.js → p-0b7c4ed5.entry.js} +1 -1
  395. package/dist/webcomponents/{p-9c7c60f3.entry.js → p-0bb616fc.entry.js} +1 -1
  396. package/dist/webcomponents/p-1575ca68.entry.js +1 -0
  397. package/dist/webcomponents/{p-8740871d.entry.js → p-1a327b0e.entry.js} +1 -1
  398. package/dist/webcomponents/p-1df660a9.entry.js +1 -0
  399. package/dist/webcomponents/p-1e761d96.entry.js +1 -0
  400. package/dist/webcomponents/{p-0eb7abed.entry.js → p-20e85114.entry.js} +1 -1
  401. package/dist/webcomponents/p-262e4b23.entry.js +1 -0
  402. package/dist/webcomponents/p-296bd0b6.entry.js +1 -0
  403. package/dist/webcomponents/{p-5490e39c.entry.js → p-368b37ad.entry.js} +1 -1
  404. package/dist/webcomponents/{p-d41ad7a8.entry.js → p-36a0af30.entry.js} +1 -1
  405. package/dist/webcomponents/p-3a3935a3.entry.js +1 -0
  406. package/dist/webcomponents/p-3fb1cf2b.entry.js +1 -0
  407. package/dist/webcomponents/p-3fbe8ac3.entry.js +1 -0
  408. package/dist/webcomponents/p-4d2589b2.entry.js +1 -0
  409. package/dist/webcomponents/p-4dc358aa.entry.js +1 -0
  410. package/dist/webcomponents/{p-99c1059c.entry.js → p-511e80a4.entry.js} +1 -1
  411. package/dist/webcomponents/p-5996879d.entry.js +1 -0
  412. package/dist/webcomponents/p-5a7207c0.entry.js +1 -0
  413. package/dist/webcomponents/p-5a748e49.entry.js +1 -0
  414. package/dist/webcomponents/p-5e6f2128.entry.js +1 -0
  415. package/dist/webcomponents/p-6454626a.entry.js +1 -0
  416. package/dist/webcomponents/p-66713269.entry.js +1 -0
  417. package/dist/webcomponents/p-679b36b5.entry.js +1 -0
  418. package/dist/webcomponents/{p-c9920e22.entry.js → p-725319f3.entry.js} +1 -1
  419. package/dist/webcomponents/p-77754a65.entry.js +1 -0
  420. package/dist/webcomponents/p-7bb7aaca.entry.js +1 -0
  421. package/dist/webcomponents/p-8884e000.entry.js +1 -0
  422. package/dist/webcomponents/p-88a8741b.entry.js +1 -0
  423. package/dist/webcomponents/{p-c3a625ec.entry.js → p-897b794b.entry.js} +4 -4
  424. package/dist/webcomponents/p-899b981b.entry.js +1 -0
  425. package/dist/webcomponents/p-8c4b502d.entry.js +1 -0
  426. package/dist/webcomponents/p-8df30672.entry.js +1 -0
  427. package/dist/webcomponents/p-911b3d63.entry.js +1 -0
  428. package/dist/webcomponents/p-97b8bf5c.entry.js +1 -0
  429. package/dist/webcomponents/p-9b74a642.entry.js +1 -0
  430. package/dist/webcomponents/p-9b8aee30.entry.js +1 -0
  431. package/dist/webcomponents/p-9e94c9ef.entry.js +1 -0
  432. package/dist/webcomponents/{p-B69TWr1K.js → p-B4xdk4mG.js} +1 -1
  433. package/dist/webcomponents/{p-MFnmyvti.js → p-BEu9YFnf.js} +1 -1
  434. package/dist/webcomponents/{p-gcRtE71H.js → p-BMJe4lzg.js} +1 -1
  435. package/dist/webcomponents/p-BhqSAzpT.js +1 -0
  436. package/dist/webcomponents/p-BrRsgB8S.js +1 -0
  437. package/dist/webcomponents/{p-DUQxAYW4.js → p-C2Senazf.js} +1 -1
  438. package/dist/webcomponents/p-C9VmfRis.js +1 -0
  439. package/dist/webcomponents/{p-BDRSfgZJ.js → p-CBbwdoSa.js} +1 -1
  440. package/dist/webcomponents/{p-C0FpWzgU.js → p-CCxsFwC4.js} +1 -1
  441. package/dist/webcomponents/p-CK_XkZku.js +1 -0
  442. package/dist/webcomponents/p-CQGIjIgZ.js +1 -0
  443. package/dist/webcomponents/{p-Qmo430x1.js → p-CV8xqdt6.js} +1 -1
  444. package/dist/webcomponents/p-CZ3F1ZAT.js +1 -0
  445. package/dist/webcomponents/p-CgiDds_u.js +1 -0
  446. package/dist/webcomponents/p-CsgUIrv8.js +1 -0
  447. package/dist/webcomponents/{p-BIzMmHpn.js → p-D6bKoyRc.js} +1 -1
  448. package/dist/webcomponents/{p-E8uzhk39.js → p-DATDsXcA.js} +1 -1
  449. package/dist/webcomponents/{p-H_emngUs.js → p-DGGjRqDa.js} +1 -1
  450. package/dist/webcomponents/{p-CJ4viNrp.js → p-DUmUUj9r.js} +1 -1
  451. package/dist/webcomponents/p-DY_3dcgR.js +1 -0
  452. package/dist/webcomponents/{p-DircQtPA.js → p-Dit3fZpU.js} +1 -1
  453. package/dist/webcomponents/p-DkoufM1t.js +1 -0
  454. package/dist/webcomponents/{p-DcHTywGe.js → p-Dlrq1iZf.js} +1 -1
  455. package/dist/webcomponents/p-DmdEjScI.js +1 -0
  456. package/dist/webcomponents/p-Dr8Z8wfP.js +1 -0
  457. package/dist/webcomponents/p-RTAZ4tdd.js +1 -0
  458. package/dist/webcomponents/p-Ty7R7tsw.js +1 -0
  459. package/dist/webcomponents/{p-CYz0Hubu.js → p-U3nU15el.js} +1 -1
  460. package/dist/webcomponents/{p-CjfgyxBN.js → p-VRubcA-q.js} +1 -1
  461. package/dist/webcomponents/{p-KS3Bf_2D.js → p-W9WWoLzT.js} +1 -1
  462. package/dist/webcomponents/p-a0b4c42b.entry.js +1 -0
  463. package/dist/webcomponents/p-abcb4945.entry.js +1 -0
  464. package/dist/webcomponents/p-ad3a73af.entry.js +1 -0
  465. package/dist/webcomponents/p-b0f0d53c.entry.js +1 -0
  466. package/dist/webcomponents/p-c8a5a2a9.entry.js +1 -0
  467. package/dist/webcomponents/p-c920dc54.entry.js +1 -0
  468. package/dist/webcomponents/p-ca0d1c6c.entry.js +1 -0
  469. package/dist/webcomponents/p-cbd52897.entry.js +1 -0
  470. package/dist/webcomponents/p-cc0c722c.entry.js +1 -0
  471. package/dist/webcomponents/p-cc2a1c7c.entry.js +1 -0
  472. package/dist/webcomponents/{p-b31bf32a.entry.js → p-cdf1e61c.entry.js} +1 -1
  473. package/dist/webcomponents/p-cf644e46.entry.js +1 -0
  474. package/dist/webcomponents/{p-d79f9a54.entry.js → p-d0c4b0ea.entry.js} +1 -1
  475. package/dist/webcomponents/p-d5765545.entry.js +1 -0
  476. package/dist/webcomponents/p-def84700.entry.js +1 -0
  477. package/dist/webcomponents/p-e2d33311.entry.js +1 -0
  478. package/dist/webcomponents/{p-dd0c456f.entry.js → p-e4335938.entry.js} +1 -1
  479. package/dist/webcomponents/{p-c8bd7e0d.entry.js → p-e805b011.entry.js} +1 -1
  480. package/dist/webcomponents/p-f30c939f.entry.js +1 -0
  481. package/dist/webcomponents/{p-50308873.entry.js → p-f99403d8.entry.js} +1 -1
  482. package/dist/webcomponents/p-fb644da6.entry.js +1 -0
  483. package/dist/webcomponents/p-fc4b27ec.entry.js +1 -0
  484. package/dist/webcomponents/p-fe43449c.entry.js +1 -0
  485. package/dist/webcomponents/p-sA8HBfkI.js +1 -0
  486. package/dist/webcomponents/webcomponents.esm.js +1 -1
  487. package/package.json +1 -1
  488. package/dist/cjs/checkout.store-BA6h-dp2.js +0 -107
  489. package/dist/esm/checkout.store-CaS_htQd.js +0 -101
  490. package/dist/webcomponents/p-0867547d.entry.js +0 -1
  491. package/dist/webcomponents/p-091d6a7e.entry.js +0 -1
  492. package/dist/webcomponents/p-0d4bea62.entry.js +0 -1
  493. package/dist/webcomponents/p-1634262a.entry.js +0 -1
  494. package/dist/webcomponents/p-1a4d0ad6.entry.js +0 -1
  495. package/dist/webcomponents/p-25e3cb85.entry.js +0 -1
  496. package/dist/webcomponents/p-278988e8.entry.js +0 -1
  497. package/dist/webcomponents/p-3b5a9e94.entry.js +0 -1
  498. package/dist/webcomponents/p-44efe4ca.entry.js +0 -1
  499. package/dist/webcomponents/p-49a0ef9d.entry.js +0 -1
  500. package/dist/webcomponents/p-4bff1285.entry.js +0 -1
  501. package/dist/webcomponents/p-4d87be74.entry.js +0 -1
  502. package/dist/webcomponents/p-51107c8f.entry.js +0 -1
  503. package/dist/webcomponents/p-51d7b9f7.entry.js +0 -1
  504. package/dist/webcomponents/p-5c60ba00.entry.js +0 -1
  505. package/dist/webcomponents/p-5d56a293.entry.js +0 -1
  506. package/dist/webcomponents/p-654d91d7.entry.js +0 -1
  507. package/dist/webcomponents/p-68c2ce90.entry.js +0 -1
  508. package/dist/webcomponents/p-69b0be17.entry.js +0 -1
  509. package/dist/webcomponents/p-6e99cd4c.entry.js +0 -1
  510. package/dist/webcomponents/p-7e4bfba1.entry.js +0 -1
  511. package/dist/webcomponents/p-87d23cf8.entry.js +0 -1
  512. package/dist/webcomponents/p-9065f077.entry.js +0 -1
  513. package/dist/webcomponents/p-908f6b79.entry.js +0 -1
  514. package/dist/webcomponents/p-93d98b07.entry.js +0 -1
  515. package/dist/webcomponents/p-94b2d6a1.entry.js +0 -1
  516. package/dist/webcomponents/p-980db13b.entry.js +0 -1
  517. package/dist/webcomponents/p-B10U2_Sw.js +0 -1
  518. package/dist/webcomponents/p-BqXh8qSb.js +0 -1
  519. package/dist/webcomponents/p-CA9okQxT.js +0 -1
  520. package/dist/webcomponents/p-CMTxbXEr.js +0 -1
  521. package/dist/webcomponents/p-CdVle3mx.js +0 -1
  522. package/dist/webcomponents/p-CiMKKjGV.js +0 -1
  523. package/dist/webcomponents/p-CjxyejYl.js +0 -1
  524. package/dist/webcomponents/p-CpP3EZBK.js +0 -1
  525. package/dist/webcomponents/p-DCIW8z1f.js +0 -1
  526. package/dist/webcomponents/p-DQKNMVh7.js +0 -1
  527. package/dist/webcomponents/p-DU8dqq9U.js +0 -1
  528. package/dist/webcomponents/p-Dp2W4Eq3.js +0 -1
  529. package/dist/webcomponents/p-GenVH2BR.js +0 -1
  530. package/dist/webcomponents/p-InCWAej0.js +0 -1
  531. package/dist/webcomponents/p-QmGrQis7.js +0 -1
  532. package/dist/webcomponents/p-VodztElu.js +0 -1
  533. package/dist/webcomponents/p-a4a647bd.entry.js +0 -1
  534. package/dist/webcomponents/p-abcbfb22.entry.js +0 -1
  535. package/dist/webcomponents/p-af29e819.entry.js +0 -1
  536. package/dist/webcomponents/p-b6286d7b.entry.js +0 -1
  537. package/dist/webcomponents/p-b8c816fe.entry.js +0 -1
  538. package/dist/webcomponents/p-bcec4201.entry.js +0 -1
  539. package/dist/webcomponents/p-c6ee5aa7.entry.js +0 -1
  540. package/dist/webcomponents/p-c900ccca.entry.js +0 -1
  541. package/dist/webcomponents/p-ca3733e5.entry.js +0 -1
  542. package/dist/webcomponents/p-cb61af93.entry.js +0 -1
  543. package/dist/webcomponents/p-d29ce58e.entry.js +0 -1
  544. package/dist/webcomponents/p-d34f5a20.entry.js +0 -1
  545. package/dist/webcomponents/p-d8ec7cfc.entry.js +0 -1
  546. package/dist/webcomponents/p-dda50611.entry.js +0 -1
  547. package/dist/webcomponents/p-df7e2530.entry.js +0 -1
  548. package/dist/webcomponents/p-e4a43e31.entry.js +0 -1
  549. package/dist/webcomponents/p-ea75759b.entry.js +0 -1
  550. package/dist/webcomponents/p-edcb6de1.entry.js +0 -1
  551. package/dist/webcomponents/p-faaba66d.entry.js +0 -1
  552. package/dist/webcomponents/p-fc680b08.entry.js +0 -1
  553. package/dist/webcomponents/p-fcaaed23.entry.js +0 -1
  554. package/dist/webcomponents/p-fefc4dea.entry.js +0 -1
  555. package/dist/webcomponents/p-ff1bc3de.entry.js +0 -1
@@ -0,0 +1 @@
1
+ import{r as t,c as e,h as i,g as s,H as a}from"./p-DwYM91AU.js";import{S as r}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{c as n,J as d}from"./p-BEu9YFnf.js";import{w as o,c}from"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{a as h,C as l}from"./p-Cjcsf8ku.js";import{c as u}from"./p-BrRsgB8S.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{P as f}from"./p-DkoufM1t.js";import{S as m}from"./p-CsgUIrv8.js";import{B as b}from"./p-Ty7R7tsw.js";import{v as p}from"./p-sA8HBfkI.js";import"./p-Dr8Z8wfP.js";import"./p-yyedWKWX.js";import"./p-B09GVew-.js";import"./p-BYsgavgS.js";const y=class{constructor(i){t(this,i),this.radioClick=e(this,"radio-click"),this.checked=!1,this.hidden=!1,this.handleClick=()=>{this.radioClick.emit(this.value)}}render(){return i(r,{key:"1ae40f787970160e38b72f917bda96f480d2a890"},i("div",{key:"2130596c8294cc38365e6126806735da0f93ef4a",class:`radio-list-item p-3 ${this.class||""}`,part:p,onClick:this.handleClick,hidden:this.hidden},i("form-control-radio",{key:"7d5524f518430f2bfd1c9863f354318929353cfb",name:this.name,value:this.value,checked:this.checked,label:this.label,inputHandler:()=>null})))}},v={[f.NEW_BANK_ACCOUNT]:"New bank account",[f.NEW_CARD]:"New credit or debit card"},g="Payment form not ready",k="Validation error",w=class{constructor(i){t(this,i),this.errorEvent=e(this,"error-event"),this.submitEvent=e(this,"submit-event"),this.computedHideSubmitButton=!1,this.isLoading=!1,this.submitButtonText="Submit"}paymentMethodsChanged(){this.setDefaultSelectedPaymentMethod()}connectedCallback(){this.setDefaultSelectedPaymentMethod(),this.setComputedHideSubmitButton()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup(),this.unsubscribeFromStore&&this.unsubscribeFromStore()}componentWillLoad(){n(),this.analytics=new d(this)}handleRadioClick(t){this.selectedPaymentMethod=t.detail,u.selectedPaymentMethod={type:t.detail}}async fillBillingForm(t){var e;null===(e=this.billingFormRef)||void 0===e||e.fill(t)}async tokenizePaymentMethod(t){null==t||t.preventDefault(),this.validateRequiredProps(),this.isLoading=!0;try{if(!(await this.validate()).isValid)return this.errorEvent.emit({errorCode:h.TOKENIZE_ERROR,message:k}),void(this.isLoading=!1);const t=await this.resolvePaymentMethod({isValid:!0});return t.error&&this.emitError({errorCode:t.error.code,message:t.error.message}),this.submitEvent.emit({response:t}),t}catch(t){const e=this.createErrorResponse(h.TOKENIZE_ERROR,t.message);return this.emitError({errorCode:h.TOKENIZE_ERROR,message:t.message}),this.submitEvent.emit({response:e}),e}finally{this.isLoading=!1}}async validate(){if(!this.areFormsReady())return{isValid:!1,errors:{general:g}};const[t,e]=await Promise.all([this.billingFormRef.validate(),this.paymentMethodFormRef.validate()]);return{isValid:t.isValid&&e.isValid,errors:Object.assign(Object.assign({},t.errors),e.errors)}}async tokenize(){try{const t=await this.billingFormRef.getValues(),e={clientId:this.authToken||u.authToken,account:this.accountId||u.accountId,paymentMethodMetadata:this.buildPaymentMethodMetadata(t)};return await this.paymentMethodFormRef.tokenize(e)}catch(t){return t}}validateRequiredProps(){this.authToken||u.authToken||this.emitError({errorCode:h.TOKENIZE_ERROR,message:"Auth token is required when using the tokenize-payment-method component not slotted in justifi-modular-checkout"}),this.accountId||u.accountId||this.emitError({errorCode:h.TOKENIZE_ERROR,message:"Account ID is required when using the tokenize-payment-method component not slotted in justifi-modular-checkout"})}setDefaultSelectedPaymentMethod(){this.selectedPaymentMethod||(this.disableCreditCard?this.disableBankAccount||(this.selectedPaymentMethod=f.NEW_BANK_ACCOUNT,u.selectedPaymentMethod={type:f.NEW_BANK_ACCOUNT}):(this.selectedPaymentMethod=f.NEW_CARD,u.selectedPaymentMethod={type:f.NEW_CARD}))}setComputedHideSubmitButton(){if(void 0!==this.hideSubmitButton)return void(this.computedHideSubmitButton=this.hideSubmitButton);const t=this.isSlottedWithinModularCheckout();this.computedHideSubmitButton=t}isSlottedWithinModularCheckout(){var t;let e=null===(t=this.host)||void 0===t?void 0:t.parentElement;for(;e;){if("JUSTIFI-MODULAR-CHECKOUT"===e.tagName)return!0;e=e.parentElement}return!1}get availablePaymentMethods(){const t=[];return this.disableCreditCard||t.push(f.NEW_CARD),this.disableBankAccount||t.push(f.NEW_BANK_ACCOUNT),t}areFormsReady(){return!(!this.billingFormRef||!this.paymentMethodFormRef)}emitError(t){this.errorEvent.emit(Object.assign(Object.assign({},t),{severity:l.ERROR}))}createErrorResponse(t,e){return{error:{code:t,message:e,decline_code:void 0}}}async resolvePaymentMethod(t){if(!this.areFormsReady())return this.createErrorResponse("form_not_ready",g);try{const e=await this.validate();if(!e.isValid||!t.isValid){const t=Object.values(e.errors)[0]||k;return{validationError:!0,error:{code:"validation_error",message:String(t),decline_code:void 0}}}return await this.performTokenization()}catch(t){return{error:t}}}async performTokenization(){var t,e;const i=await this.tokenize();if(i.error)return{error:i.error};const s=i.data;return{token:(null===(t=s.card)||void 0===t?void 0:t.token)||(null===(e=s.bank_account)||void 0===e?void 0:e.token),data:s}}buildPaymentMethodMetadata(t){return this.shouldSavePaymentMethod?Object.assign(Object.assign({},t),{payment_method_group_id:this.paymentMethodGroupID}):Object.assign({},t)}get paymentMethodGroupID(){return this.paymentMethodGroupId||u.paymentMethodGroupId}get shouldSavePaymentMethod(){return!(!this.paymentMethodGroupId&&!u.savePaymentMethod)}get shouldHideRadioInput(){return this.disableCreditCard||this.disableBankAccount}renderPaymentMethodOption(t){const e=this.selectedPaymentMethod===t&&void 0===u.selectedPaymentMethod.id;return i("div",{class:"payment-method"},i("justifi-radio-list-item",{name:"paymentMethodType",value:t,checked:e,label:v[t],hidden:this.shouldHideRadioInput}),e&&this.renderSelectedPaymentMethodForm(t))}renderSelectedPaymentMethodForm(t){return i("div",{class:"mt-4 pb-4"},this.renderPaymentMethodForm(t),i("div",{class:"mt-4"},i("justifi-billing-form",{ref:t=>this.billingFormRef=t,hideCardBillingForm:this.hideCardBillingForm,hideBankAccountBillingForm:this.hideBankAccountBillingForm,paymentMethodType:t})),i("div",{class:"mt-4"},i("justifi-save-new-payment-method",{hidden:!this.paymentMethodGroupID,label:this.savePaymentMethodLabel})))}renderPaymentMethodForm(t){return i(t===f.NEW_CARD?"justifi-card-form":"justifi-bank-account-form",{ref:t=>this.paymentMethodFormRef=t})}render(){return i(r,{key:"8017b0fe2b0e3045a097e30aadf6a54ed2c32e62"},i("form",{key:"c7b0ac690a66cfb693d28e7d0eabc93817de4659"},i("fieldset",{key:"fb29e26a4100985595c420024d2a5ff48c79043b"},i("div",{key:"589f51297059afda2e385281dcfeafd67fbd2268",class:"row gy-3"},i("div",{key:"bf067015fb3ff24e08501899e370f92dda774c2e",class:"col-12"},this.availablePaymentMethods.map((t=>this.renderPaymentMethodOption(t)))),i("div",{key:"28872ca9239e2f85cb83ad8e6f27dc10f84da151",class:"col-12"},i("justifi-button",{key:"1be3f46e34b42e69d065384dd195d7fdc09a0560",text:this.submitButtonText,variant:"primary",type:"submit",clickHandler:t=>this.tokenizePaymentMethod(t),isLoading:this.isLoading,"data-testid":"submit-button",hidden:this.computedHideSubmitButton}))))))}get host(){return s(this)}static get watchers(){return{disableCreditCard:["paymentMethodsChanged"],disableBankAccount:["paymentMethodsChanged"]}}},j=t=>{const{isReady:e}=t;return e?null:i("div",{class:"container-fluid p-0"},i("div",{class:"row mb-3"},i("div",{class:"col-12 align-content-end"},i(m,{height:"18px",width:"120px"}),i(m,{height:"36px"}))),i("div",{class:"row"},i("div",{class:"col-12 align-content-end"},i(m,{height:"18px",width:"110px"}),i(m,{height:"36px"}))))},C=class{constructor(e){t(this,e),this.isReady=!1}async componentWillLoad(){await o(),this.iframeOrigin=c.iframeOrigin,n(),this.analytics=new d(this)}componentDidRender(){Promise.all([this.accountNumberIframeElement,this.routingNumberIframeElement].map((t=>new Promise((e=>{t.addEventListener("iframeLoaded",(()=>{e()}))}))))).then((()=>{this.isReady=!0}))}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){const t=await this.accountNumberIframeElement.validate(),e=await this.routingNumberIframeElement.validate();return t&&e}async tokenize({clientId:t,paymentMethodMetadata:e,account:i}){return this.accountNumberIframeElement.tokenize(t,e,i)}render(){return i(r,{key:"0daa12da1ca699a05ca499425c4a37e4d913b2dd"},i(j,{key:"9d4ee0af94759d71d52130781401d322fcb5e397",isReady:this.isReady}),i("hidden-input",{key:"dc4ee0054cbc7acb214a1c410f8fd387677f92dc"}),i("div",{key:"b489311f205e0ffdaa4680621b706322bd3fc4ca",class:"container-fluid p-0",style:{opacity:this.isReady?"1":"0",height:this.isReady?"auto":"0"}},i("div",{key:"2d1b00b9705d1a94364f691d4ad705c339abbbce",class:"row mb-3"},i("iframe-input",{key:"21a66eb7d87b77c1ff1a1171a4cb84a4759853dd",inputId:"accountNumber",ref:t=>this.accountNumberIframeElement=t,label:"Account Number",iframeOrigin:`${this.iframeOrigin}/v2/accountNumber`})),i("div",{key:"1ff36d49f7304e203cdefea46010100ed750ed68",class:"row"},i("iframe-input",{key:"2211a638c875e504e7e25e0704788d7a437b5806",inputId:"routingNumber",ref:t=>this.routingNumberIframeElement=t,label:"Routing Number",iframeOrigin:`${this.iframeOrigin}/v2/routingNumber`}))))}},M=class{constructor(e){t(this,e)}get showSimpleCardBillingForm(){return this.paymentMethodType===f.NEW_CARD&&this.hideCardBillingForm}get showSimpleBankAccountBillingForm(){return this.paymentMethodType===f.NEW_BANK_ACCOUNT&&this.hideBankAccountBillingForm}async getValues(){var t;return null===(t=this.selectedFormRef)||void 0===t?void 0:t.getValues()}async fill(t){var e;null===(e=this.selectedFormRef)||void 0===e||e.fill(t)}async validate(){var t;return null===(t=this.selectedFormRef)||void 0===t?void 0:t.validate()}render(){return i(a,null,i(this.showSimpleBankAccountBillingForm?"justifi-bank-account-billing-form-simple":this.showSimpleCardBillingForm?"justifi-card-billing-form-simple":"justifi-billing-form-full",{legend:this.legend,ref:t=>this.selectedFormRef=t}))}},x=class{constructor(e){t(this,e),this.variant="primary",this.type="button"}render(){return i(r,{key:"7c8b76c4eaa412f2dc2ba59fd56cb7c28f46656c"},i(b,{key:"9440f90ebb380703b35b6c5d811e5d0780e80fd2",variant:this.variant,isLoading:this.isLoading,clickHandler:this.clickHandler,class:this.class,type:this.type,disabled:this.disabled,style:this.customStyle},this.text))}},_=t=>{const{isReady:e}=t;return e?null:i("div",{class:"container-fluid p-0"},i("div",{class:"mb-3"},i(m,{height:"18px",width:"100px"}),i(m,{height:"36px"})),i("div",{class:"row"},i("div",{class:"col-4 align-content-end"},i(m,{height:"18px",width:"80px"}),i(m,{height:"36px"})),i("div",{class:"col-4 align-content-end"},i(m,{height:"36px"})),i("div",{class:"col-4 align-content-end"},i(m,{height:"18px",width:"30px"}),i(m,{height:"36px"}))))},P=class{constructor(e){t(this,e),this.isReady=!1}async componentWillLoad(){await o(),this.iframeOrigin=c.iframeOrigin,n(),this.analytics=new d(this)}componentDidRender(){Promise.all([this.cardNumberIframeElement,this.expirationMonthIframeElement,this.expirationYearIframeElement,this.cvvIframeElement].map((t=>new Promise((e=>{t.addEventListener("iframeLoaded",(()=>{e()}))}))))).then((()=>{this.isReady=!0}))}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){const t=await this.cardNumberIframeElement.validate(),e=await this.expirationMonthIframeElement.validate(),i=await this.expirationYearIframeElement.validate(),s=await this.cvvIframeElement.validate();return t&&e&&i&&s}async tokenize({clientId:t,paymentMethodMetadata:e,account:i}){return this.cardNumberIframeElement.tokenize(t,e,i)}render(){return i(r,{key:"b0b07a928be767102b59ec93ab0df6296b8418af"},i(_,{key:"03d37e42253a905ece1e6a9b1d654e84665470d6",isReady:this.isReady}),i("hidden-input",{key:"62f657a6c0a4d5b7a7bbf809abeb42eba0d22345"}),i("div",{key:"874cac5eac376c8c4e12d99f760cd3cd487a6521",class:"container-fluid p-0",style:{opacity:this.isReady?"1":"0",height:this.isReady?"auto":"0"}},i("div",{key:"dcada2d72eebe506fe4cab8ad6eb959c551e9e2d",class:"mb-3"},i("iframe-input",{key:"7e784726f8dd0c8b35832646bc99e0d2131c08f9",inputId:"cardNumber",ref:t=>this.cardNumberIframeElement=t,label:"Card Number",iframeOrigin:`${this.iframeOrigin}/v2/cardNumber`})),i("div",{key:"2384099f3aa18b7d6bbc346f47ba9ff06e5b7e86",class:"row"},i("div",{key:"5fb523cd3f398894e5c7ee3e8a58d34581492410",class:"col-4 align-content-end"},i("iframe-input",{key:"a3b4aa06a5c85162d24e25a5261a9a2cc64a6b82",inputId:"expirationMonth",ref:t=>this.expirationMonthIframeElement=t,label:"Expiration",iframeOrigin:`${this.iframeOrigin}/v2/expirationMonth`})),i("div",{key:"3ccd6a19fce1c393a8c58534113239c518d51a4f",class:"col-4 align-content-end"},i("iframe-input",{key:"6d064b868c73b4431b476194602843b0f28729e0",inputId:"expirationYear",ref:t=>this.expirationYearIframeElement=t,label:"",iframeOrigin:`${this.iframeOrigin}/v2/expirationYear`})),i("div",{key:"26cd762bec43890e96ab5c6903943b0f4cfa9672",class:"col-4 align-content-end"},i("iframe-input",{key:"826dfe08347461bc5a94296b181826b70a7d1f6f",inputId:"CVV",ref:t=>this.cvvIframeElement=t,label:"CVV",iframeOrigin:`${this.iframeOrigin}/v2/CVV`})))))}},B=class{constructor(i){t(this,i),this.checkboxChanged=e(this,"checkboxChanged"),this.label="Save New Payment Method",this.isChecked=!1,this.handleCheckboxChange=(t,e)=>{this.isChecked=e,u.savePaymentMethod=e,this.checkboxChanged.emit(this.isChecked)}}render(){return i(r,{key:"7cc086e518b2defcea924398cd5957b44a893d94"},i("form-control-checkbox",{key:"523dd82fe06f0c0a6d259a84f320c0a335261232",label:this.label||"Save New Payment Method",name:"saveNewPaymentMethod",checked:this.isChecked,inputHandler:this.handleCheckboxChange}))}};export{w as internal_tokenize_payment_method,C as justifi_bank_account_form,M as justifi_billing_form,x as justifi_button,P as justifi_card_form,y as justifi_radio_list_item,B as justifi_save_new_payment_method}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as e}from"./p-DwYM91AU.js";import{T as i,a,b as r,c as h,d as o,e as d,f as n,g as c,h as p,i as m,j as f,k as b,l as g}from"./p-BMJe4lzg.js";import{T as u}from"./p-CZfYo5-1.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import"./p-Cjcsf8ku.js";import"./p-BrRsgB8S.js";import{p as j}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{t as l,a as k}from"./p-B4xdk4mG.js";import{o as y,g as C}from"./p-BUsqF4-J.js";import"./p-sA8HBfkI.js";import"./p-CgiDds_u.js";import"./p-BYsgavgS.js";import"./p-B09GVew-.js";import"./p-DkoufM1t.js";import"./p-U3nU15el.js";const w=class{constructor(e){t(this,e),this.clickEvent=s(this,"click-event"),this.errorEvent=s(this,"error-event"),this.terminalOrders=[],this.loading=!0,this.paging=j,this.pagingParams={},this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:u.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:u.next})},this.rowClickHandler=t=>{const s=t.target.closest("tr").dataset.rowEntityId;if(!s)return;const e=this.terminalOrders.find((t=>t.id===s));this.clickEvent.emit({name:u.row,data:e})}}updateOnPropChange(){this.fetchData()}componentWillLoad(){this.terminalOrdersTable=new i(this.terminalOrders,this.columns,l,k),this.getTerminalOrders&&this.fetchData(),y("set",(()=>{this.pagingParams={}})),y("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}fetchData(){this.loading=!0,this.getTerminalOrders({params:this.terminalOrderParams,onSuccess:async({terminalOrders:t,pagingInfo:s})=>{this.terminalOrders=t,this.paging=s,this.terminalOrdersTable.collectionData=this.terminalOrders},onError:({error:t,code:s,severity:e})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:s,message:t,severity:e})},final:()=>{this.loading=!1}})}get terminalOrderParams(){const t=C();return Object.assign(Object.assign({},t),this.pagingParams)}get entityId(){return this.terminalOrders.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalOrdersTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return e(g,{key:"f4b0c2f36eae458a64d22414c1dd186324997710"},e(a,{key:"df2e3ca2bd333e6d1d8a9ebdc5a6ebd6ff1e39bf"},e(r,{key:"53dad354d406dc32acbef9a91998d39d011e3e49"},e(h,{key:"efd2ed2cac91229e49dd94a918d84adaece80795"},this.terminalOrdersTable.columnData.map((t=>t)))),e(o,{key:"6d03c18481a802a6e95147a0d1e18fb0d7f88f51"},e(d,{key:"a07b5fe8086d006ba9b30eb1132699b327feee5f",columnSpan:this.terminalOrdersTable.columnKeys.length,isLoading:this.loading}),e(n,{key:"62eea598812372209f82bdfb062eb84e089bb8cb",isEmpty:this.showEmptyState,columnSpan:this.terminalOrdersTable.columnKeys.length}),e(c,{key:"4ba4c76d959932caa38a42b3add0cfe36049a067",columnSpan:this.terminalOrdersTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalOrdersTable.rowData.map(((t,s)=>e(p,{"data-test-id":"table-row","data-row-entity-id":this.entityId[s],onClick:this.rowClickHandler},t)))),this.paging&&e(m,{key:"ba3336a12b83890e5b044f73f512c6340cdc75ce"},e(f,{key:"e717fecb8311d3ac8958cb90b0eeb82e47774509"},e(b,{key:"3d337b1724912d11fb1c94d6f43fd8cd98759d33",colSpan:this.terminalOrdersTable.columnData.length},e("pagination-menu",{key:"e55efb324a7e7504a100dadb5c3876b13f260e65",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})}))))))}static get watchers(){return{pagingParams:["updateOnPropChange"],getTerminalOrders:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{w as terminal_orders_list_core}
@@ -1 +1 @@
1
- import{r as t,c as s,h as e,H as a,g as i}from"./p-DwYM91AU.js";import{i as r,a as o,b as h,c as n,l as c}from"./p-QmGrQis7.js";import{F as l}from"./p-DQKNMVh7.js";import{F as f}from"./p-CpP3EZBK.js";import"./p-CZfYo5-1.js";const m=class{constructor(e){t(this,e),this.formControlInput=s(this,"formControlInput"),this.formControlBlur=s(this,"formControlBlur"),this.isFocused=!1,this.handleFormControlInput=t=>{const s=t.target,e=s.getAttribute("name");this.inputHandler(e,s.value),this.formControlInput.emit({name:e,value:s.value})},this.updateInput=t=>{const s=this.el.querySelector("input");s&&(s.value=t||"")}}handleDefaultValueChange(t){this.updateInput(t)}componentDidLoad(){this.updateInput(this.defaultValue)}get part(){return this.isFocused&&this.errorText?r:this.isFocused?o:this.errorText?h:n}render(){return e(a,{key:"4d8da754b67934d367072f31e4f7624c7e34bb32"},e("div",{key:"10706649a5cf83802e77ee9e8e098b0a83dfb089",class:"form-group d-flex flex-column"},e("label",{key:"eac751313ef89a276a0e8c090c1a6d92c313407c",part:c,class:"form-label",htmlFor:this.name},this.label),e("input",{key:"8d62777adf0329b489630d448ca15076cba2bfba",id:this.name,name:this.name,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()},onInput:this.handleFormControlInput,part:this.part,class:this.errorText?"form-control is-invalid":"form-control",type:"number",disabled:this.disabled}),e(l,{key:"f4de74463e069c5502c8b1cf78ec2560caaae4a4",helpText:this.helpText,name:this.name}),e(f,{key:"2331b865a7dbae4a8ee7f859221450165cf12dc7",errorText:this.errorText,name:this.name})))}get el(){return i(this)}static get watchers(){return{defaultValue:["handleDefaultValueChange"]}}};export{m as form_control_number}
1
+ import{r as t,c as s,h as e,H as a,g as i}from"./p-DwYM91AU.js";import{i as r,a as o,b as h,c as f,l as n}from"./p-sA8HBfkI.js";import{F as c}from"./p-CK_XkZku.js";import{F as l}from"./p-CZ3F1ZAT.js";import"./p-CZfYo5-1.js";const d=class{constructor(e){t(this,e),this.formControlInput=s(this,"formControlInput"),this.formControlBlur=s(this,"formControlBlur"),this.isFocused=!1,this.handleFormControlInput=t=>{const s=t.target,e=s.getAttribute("name");this.inputHandler(e,s.value),this.formControlInput.emit({name:e,value:s.value})},this.updateInput=t=>{const s=this.el.querySelector("input");s&&(s.value=t||"")}}handleDefaultValueChange(t){this.updateInput(t)}componentDidLoad(){this.updateInput(this.defaultValue)}get part(){return this.isFocused&&this.errorText?r:this.isFocused?o:this.errorText?h:f}render(){return e(a,{key:"7f35cfd267eb699289ef853e2304b57001ee5d72"},e("div",{key:"b1904621266ded431837e3eff9c0f7c34118f6da",class:"form-group d-flex flex-column"},e("label",{key:"6b2f9ca05973be1dc766368c27c54a33de6456b0",part:n,class:"form-label",htmlFor:this.name},this.label),e("input",{key:"cab982efea26e96dfc027401fd2fc6de8dab454f",id:this.name,name:this.name,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()},onInput:this.handleFormControlInput,part:this.part,class:this.errorText?"form-control is-invalid":"form-control",type:"number",disabled:this.disabled}),e(c,{key:"1bd6b915860a46baba35b74d9f2c260aa5b4e757",helpText:this.helpText,name:this.name}),e(l,{key:"ef91eda0e16195dbc6a59998cff4a43c16f8d8fc",errorText:this.errorText,name:this.name})))}get el(){return i(this)}static get watchers(){return{defaultValue:["handleDefaultValueChange"]}}};export{d as form_control_number}
@@ -0,0 +1 @@
1
+ import{h as t,r as e,c as a}from"./p-DwYM91AU.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as s,a as i}from"./p-Cjcsf8ku.js";import{h as r}from"./p-BrRsgB8S.js";import{p as n}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as o,J as c}from"./p-BEu9YFnf.js";import{g as p,a as h}from"./p-D2muobcE.js";import{P as d}from"./p-DGGjRqDa.js";import{T as f,l,a as u,b as m,c as y,d as b,e as _,f as g,g as j,h as k,i as w,j as T,k as v}from"./p-BMJe4lzg.js";import{S as D}from"./p-BP2sTIQV.js";import{T as C}from"./p-CZfYo5-1.js";import{a as R}from"./p-B09GVew-.js";import{V as S,W as B}from"./p-sA8HBfkI.js";import"./p-BYsgavgS.js";import"./p-DkoufM1t.js";import"./p-Dr8Z8wfP.js";import"./p-yyedWKWX.js";import"./p-CgiDds_u.js";const F={created_at:()=>t("th",{part:S,scope:"col",title:"The date and time each transaction was made"},"Processed On"),type:()=>t("th",{part:S,scope:"col",title:"The type of each transaction"},"Type"),id:()=>t("th",{part:S,scope:"col",title:"The unique identifier of each transaction"},"ID"),amount:()=>t("th",{part:S,scope:"col",title:"The dollar amount of each transaction",class:"text-end"},"Amount"),balance:()=>t("th",{part:S,scope:"col",title:"The running total amount of this payment that belongs to you",class:"text-end"},"Balance"),currency:()=>t("th",{part:S,scope:"col",title:"The currency of each transaction"},"Currency"),financial_transaction_id:()=>t("th",{part:S,scope:"col",title:"The unique identifier of the financial transaction associated with the payment balance transaction"},"Financial Transaction ID"),payment_id:()=>t("th",{part:S,scope:"col",title:"The unique identifier of the payment associated with the payment balance transaction"},"Payment ID"),payment_balance_txn_type:()=>t("th",{part:S,scope:"col",title:"The type of the payment balance transaction"},"Transaction Type"),source_id:()=>t("th",{part:S,scope:"col",title:"The unique identifier of the source object associated with the payment balance transaction"},"Source ID"),source_type:()=>t("th",{part:S,scope:"col",title:"The type of the source object associated with the payment balance transaction"},"Source Type")},I={ach_return:"ACH Return",ach_return_fee:"ACH Return Fee",dispute:"Dispute",dispute_fee:"Dispute Fee",dispute_fee_refund:"Dispute Fee Refund",dispute_refund:"Dispute Refund",payment:"Payment",payment_fee:"Fee",refund:"Refund",fee_refund:"Fee Refund",application_fee_returned:"Application Fee Returned",refund_failure:"Refund Failure",void:"Void"},x={created_at:(e,a)=>t("td",{part:B(a)},t("div",{class:"fw-bold"},R(e.created_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},R(e.created_at,{showTime:!0}))),type:(e,a)=>t("td",{part:B(a)},I[e.payment_balance_txn_type]),id:(e,a)=>t("td",{part:B(a)},e.id),amount:(e,a)=>t("td",{part:B(a),class:"text-end"},e.formattedPaymentAmount(e.amount)),balance:(e,a)=>t("td",{part:B(a),class:"text-end"},e.formattedPaymentAmount(e.balance)),currency:(e,a)=>t("td",{part:B(a)},e.currency),financial_transaction_id:(e,a)=>t("td",{part:B(a)},e.financial_transaction_id),payment_id:(e,a)=>t("td",{part:B(a)},e.payment_id),payment_balance_txn_type:(e,a)=>t("td",{part:B(a)},e.payment_balance_txn_type),source_id:(e,a)=>t("td",{part:B(a)},e.source_id),source_type:(e,a)=>t("td",{part:B(a)},e.source_type)},E=class{constructor(t){e(this,t),this.clickEvent=a(this,"click-event"),this.errorEvent=a(this,"error-event"),this.balanceTransactions=[],this.isLoading=!0,this.errorMessage=null,this.paging=n,this.pagingParams={},this.columns="created_at,type,id,amount,balance",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:C.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:C.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const a=this.balanceTransactions.find((t=>t.id===e));this.clickEvent.emit({name:C.row,data:a})}}componentWillLoad(){this.transactionsTable=new f(this.balanceTransactions,this.columns,F,x),o(),this.analytics=new c(this),this.initializeApi()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeApi()}handleError(t,e,a){this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:e,severity:a})}initializeApi(){this.paymentId&&this.authToken?(({id:t,authToken:e,service:a})=>async({params:i,onSuccess:n,onError:o,final:c})=>{var d;try{const c=await a.fetchPaymentTransactions(t,e,i);c.error?o({error:h(c.error),code:p(null===(d=c.error)||void 0===d?void 0:d.code),severity:s.ERROR}):n({balanceTransactions:c.data.map((t=>new r(t))),pagingInfo:Object.assign({},c.page_info)})}catch(t){const e=p(null==t?void 0:t.code);o({error:h(t),code:e,severity:s.ERROR})}finally{c()}})({id:this.paymentId,authToken:this.authToken,service:new d})({params:this.pagingParams,onSuccess:({balanceTransactions:t,pagingInfo:e})=>{this.balanceTransactions=t,this.paging=e,this.transactionsTable.collectionData=this.balanceTransactions},onError:({error:t,code:e,severity:a})=>{this.errorMessage=t.message,this.handleError(t,e,a)},final:()=>{this.isLoading=!1}}):(this.errorMessage="payment-id and auth-token props are required",this.handleError(i.MISSING_PROPS,this.errorMessage,s.ERROR))}get entityId(){return this.balanceTransactions.map((t=>t.id))}get showEmptyState(){return!this.isLoading&&!this.errorMessage&&this.transactionsTable.rowData.length<1}get showErrorState(){return!this.isLoading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.isLoading}render(){return t(D,{key:"8a307277a1953bea93e7b15d2774700f07319c87"},t(l,{key:"1097f6a329292851cfcdd16240fa5f161f8aa7e4"},t(u,{key:"9ae196b35c90391de0d9a31f79c732e6de991b08"},t(m,{key:"a7eaab567c42bb2676b91259363b9c4bee2683df"},t(y,{key:"461752dafb18db32ef0367d90cb1482980e92187"},this.transactionsTable.columnData.map((t=>t)))),t(b,{key:"5c0ce55bd2ad81de73866c869818820568233422"},t(_,{key:"8a54d3632e2193576a2e5037c9d7b8a614fcd5b6",columnSpan:this.transactionsTable.columnKeys.length,isLoading:this.isLoading}),t(g,{key:"6fab4a7cce6678a30992be71c702fab2259c2b49",isEmpty:this.showEmptyState,columnSpan:this.transactionsTable.columnKeys.length}),t(j,{key:"8ab1c46ecbd0d2ed98dacf9edcd690054a90c081",columnSpan:this.transactionsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.transactionsTable.rowData.map(((e,a)=>t(k,{"data-test-id":"table-row","data-row-entity-id":this.entityId[a],onClick:this.rowClickHandler},e)))),this.paging&&t(w,{key:"8ff1f32400ae7127af54dc72d7f004f9f47b189d"},t(T,{key:"f61fb96596cfd7fb2b9c8df9abe7b93ca911f92c"},t(v,{key:"609114cbd75f787012c1625e0b197fd5820d054e",colSpan:this.transactionsTable.columnData.length},t("pagination-menu",{key:"54b78b6480f2c7ee718ae9379a62e0961f8b8170",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["propChanged"],paymentId:["propChanged"],authToken:["propChanged"]}}};export{E as justifi_payment_transactions_list}
@@ -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-B09GVew-.js";import"./p-tGDdRx0W.js";import{C as a,a as u}from"./p-Cjcsf8ku.js";import{R as l,l as m}from"./p-BrRsgB8S.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{B as h}from"./p-Ty7R7tsw.js";import{S as p}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{P as c}from"./p-DGGjRqDa.js";import{m as d}from"./p-DATDsXcA.js";import{c as f,J as v}from"./p-BEu9YFnf.js";import{g as j,a as y}from"./p-D2muobcE.js";import{A as b}from"./p-yyedWKWX.js";import{S as w}from"./p-CsgUIrv8.js";import"./p-BFTU3MAI.js";import"./p-HXpYMWUU.js";import"./p-BYsgavgS.js";import"./p-DkoufM1t.js";import"./p-sA8HBfkI.js";import"./p-Dr8Z8wfP.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}))},A=t=>{if(t)return r({amount:g(t),description:i().optional(),reason:i().optional().oneOf([l.customerRequest,l.duplicate,l.fraudulent],"Select a reason")})},B=[{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"}],R=b();class x{async postRefund(t,s,e,r){return R.post({endpoint:`payments/${t}/refunds`,headers:{"Sub-Account":s},body:r,authToken:e})}}const D=()=>t("div",{class:"row gap-3"},t("div",{class:"col-12"},t(w,{width:"100%",height:"40px"}))),T=()=>t(p,null,t("div",{class:"row gap-5"},t(D,null),t(D,null),t(D,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(A())}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(A(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 c})({onSuccess:({payment:t})=>{this.refundPayload=new m({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 x}),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(T,null);const s=this.formController.getInitialValues(),e=this.refundPayload.amount;return t(p,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:B,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(h,{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}
@@ -1 +1 @@
1
- import{r as t,c as n,h as e}from"./p-DwYM91AU.js";import{ax as r,ay as i,az as o}from"./p-QmGrQis7.js";var a="top",u="bottom",f="right",c="left",s="auto",l=[a,u,f,c],p="start",d="end",h="viewport",v="popper",b=l.reduce((function(t,n){return t.concat([n+"-"+p,n+"-"+d])}),[]),m=[].concat(l,[s]).reduce((function(t,n){return t.concat([n,n+"-"+p,n+"-"+d])}),[]),y=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function w(t){return t?(t.nodeName||"").toLowerCase():null}function x(t){if(null==t)return window;if("[object Window]"!==t.toString()){var n=t.ownerDocument;return n&&n.defaultView||window}return t}function g(t){return t instanceof x(t).Element||t instanceof Element}function O(t){return t instanceof x(t).HTMLElement||t instanceof HTMLElement}function j(t){return"undefined"!=typeof ShadowRoot&&(t instanceof x(t).ShadowRoot||t instanceof ShadowRoot)}function k(t){return t.split("-")[0]}var M=Math.max,E=Math.min,q=Math.round;function A(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function B(){return!/^((?!chrome|android).)*safari/i.test(A())}function P(t,n,e){void 0===n&&(n=!1),void 0===e&&(e=!1);var r=t.getBoundingClientRect(),i=1,o=1;n&&O(t)&&(i=t.offsetWidth>0&&q(r.width)/t.offsetWidth||1,o=t.offsetHeight>0&&q(r.height)/t.offsetHeight||1);var a=(g(t)?x(t):window).visualViewport,u=!B()&&e,f=(r.left+(u&&a?a.offsetLeft:0))/i,c=(r.top+(u&&a?a.offsetTop:0))/o,s=r.width/i,l=r.height/o;return{width:s,height:l,top:c,right:f+s,bottom:c+l,left:f,x:f,y:c}}function R(t){var n=P(t),e=t.offsetWidth,r=t.offsetHeight;return Math.abs(n.width-e)<=1&&(e=n.width),Math.abs(n.height-r)<=1&&(r=n.height),{x:t.offsetLeft,y:t.offsetTop,width:e,height:r}}function z(t,n){var e=n.getRootNode&&n.getRootNode();if(t.contains(n))return!0;if(e&&j(e)){var r=n;do{if(r&&t.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function L(t){return x(t).getComputedStyle(t)}function S(t){return["table","td","th"].indexOf(w(t))>=0}function W(t){return((g(t)?t.ownerDocument:t.document)||window.document).documentElement}function C(t){return"html"===w(t)?t:t.assignedSlot||t.parentNode||(j(t)?t.host:null)||W(t)}function H(t){return O(t)&&"fixed"!==L(t).position?t.offsetParent:null}function T(t){for(var n=x(t),e=H(t);e&&S(e)&&"static"===L(e).position;)e=H(e);return e&&("html"===w(e)||"body"===w(e)&&"static"===L(e).position)?n:e||function(t){var n=/firefox/i.test(A());if(/Trident/i.test(A())&&O(t)&&"fixed"===L(t).position)return null;var e=C(t);for(j(e)&&(e=e.host);O(e)&&["html","body"].indexOf(w(e))<0;){var r=L(e);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||n&&"filter"===r.willChange||n&&r.filter&&"none"!==r.filter)return e;e=e.parentNode}return null}(t)||n}function I(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function _(t,n,e){return M(t,E(n,e))}function D(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function V(t,n){return n.reduce((function(n,e){return n[e]=t,n}),{})}function Q(t){return t.split("-")[1]}var U={top:"auto",right:"auto",bottom:"auto",left:"auto"};function F(t){var n,e=t.popper,r=t.popperRect,i=t.placement,o=t.variation,s=t.offsets,l=t.position,p=t.gpuAcceleration,h=t.adaptive,v=t.roundOffsets,b=t.isFixed,m=s.x,y=void 0===m?0:m,w=s.y,g=void 0===w?0:w,O="function"==typeof v?v({x:y,y:g}):{x:y,y:g};y=O.x,g=O.y;var j=s.hasOwnProperty("x"),k=s.hasOwnProperty("y"),M=c,E=a,A=window;if(h){var B=T(e),P="clientHeight",R="clientWidth";B===x(e)&&"static"!==L(B=W(e)).position&&"absolute"===l&&(P="scrollHeight",R="scrollWidth"),(i===a||(i===c||i===f)&&o===d)&&(E=u,g-=(b&&B===A&&A.visualViewport?A.visualViewport.height:B[P])-r.height,g*=p?1:-1),i!==c&&(i!==a&&i!==u||o!==d)||(M=f,y-=(b&&B===A&&A.visualViewport?A.visualViewport.width:B[R])-r.width,y*=p?1:-1)}var z,S=Object.assign({position:l},h&&U),C=!0===v?function(t,n){var e=t.y,r=n.devicePixelRatio||1;return{x:q(t.x*r)/r||0,y:q(e*r)/r||0}}({x:y,y:g},x(e)):{x:y,y:g};return y=C.x,g=C.y,Object.assign({},S,p?((z={})[E]=k?"0":"",z[M]=j?"0":"",z.transform=(A.devicePixelRatio||1)<=1?"translate("+y+"px, "+g+"px)":"translate3d("+y+"px, "+g+"px, 0)",z):((n={})[E]=k?g+"px":"",n[M]=j?y+"px":"",n.transform="",n))}var G={passive:!0},Y={left:"right",right:"left",bottom:"top",top:"bottom"};function J(t){return t.replace(/left|right|bottom|top/g,(function(t){return Y[t]}))}var K={start:"end",end:"start"};function N(t){return t.replace(/start|end/g,(function(t){return K[t]}))}function X(t){var n=x(t);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function Z(t){return P(W(t)).left+X(t).scrollLeft}function $(t){var n=L(t);return/auto|scroll|overlay|hidden/.test(n.overflow+n.overflowY+n.overflowX)}function tt(t){return["html","body","#document"].indexOf(w(t))>=0?t.ownerDocument.body:O(t)&&$(t)?t:tt(C(t))}function nt(t,n){var e;void 0===n&&(n=[]);var r=tt(t),i=r===(null==(e=t.ownerDocument)?void 0:e.body),o=x(r),a=i?[o].concat(o.visualViewport||[],$(r)?r:[]):r,u=n.concat(a);return i?u:u.concat(nt(C(a)))}function et(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function rt(t,n,e){return n===h?et(function(t,n){var e=x(t),r=W(t),i=e.visualViewport,o=r.clientWidth,a=r.clientHeight,u=0,f=0;if(i){o=i.width,a=i.height;var c=B();(c||!c&&"fixed"===n)&&(u=i.offsetLeft,f=i.offsetTop)}return{width:o,height:a,x:u+Z(t),y:f}}(t,e)):g(n)?function(t,n){var e=P(t,!1,"fixed"===n);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(n,e):et(function(t){var n,e=W(t),r=X(t),i=null==(n=t.ownerDocument)?void 0:n.body,o=M(e.scrollWidth,e.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=M(e.scrollHeight,e.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),u=-r.scrollLeft+Z(t),f=-r.scrollTop;return"rtl"===L(i||e).direction&&(u+=M(e.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:u,y:f}}(W(t)))}function it(t){var n,e=t.reference,r=t.element,i=t.placement,o=i?k(i):null,s=i?Q(i):null,l=e.x+e.width/2-r.width/2,h=e.y+e.height/2-r.height/2;switch(o){case a:n={x:l,y:e.y-r.height};break;case u:n={x:l,y:e.y+e.height};break;case f:n={x:e.x+e.width,y:h};break;case c:n={x:e.x-r.width,y:h};break;default:n={x:e.x,y:e.y}}var v=o?I(o):null;if(null!=v){var b="y"===v?"height":"width";switch(s){case p:n[v]=n[v]-(e[b]/2-r[b]/2);break;case d:n[v]=n[v]+(e[b]/2-r[b]/2)}}return n}function ot(t,n){void 0===n&&(n={});var e=n.placement,r=void 0===e?t.placement:e,i=n.strategy,o=void 0===i?t.strategy:i,c=n.boundary,s=void 0===c?"clippingParents":c,p=n.rootBoundary,d=void 0===p?h:p,b=n.elementContext,m=void 0===b?v:b,y=n.altBoundary,x=void 0!==y&&y,j=n.padding,k=void 0===j?0:j,q=D("number"!=typeof k?k:V(k,l)),A=t.rects.popper,B=t.elements[x?m===v?"reference":v:m],R=function(t,n,e,r){var i="clippingParents"===n?function(t){var n=nt(C(t)),e=["absolute","fixed"].indexOf(L(t).position)>=0&&O(t)?T(t):t;return g(e)?n.filter((function(t){return g(t)&&z(t,e)&&"body"!==w(t)})):[]}(t):[].concat(n),o=[].concat(i,[e]),a=o.reduce((function(n,e){var i=rt(t,e,r);return n.top=M(i.top,n.top),n.right=E(i.right,n.right),n.bottom=E(i.bottom,n.bottom),n.left=M(i.left,n.left),n}),rt(t,o[0],r));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(g(B)?B:B.contextElement||W(t.elements.popper),s,d,o),S=P(t.elements.reference),H=it({reference:S,element:A,placement:r}),I=et(Object.assign({},A,H)),_=m===v?I:S,Q={top:R.top-_.top+q.top,bottom:_.bottom-R.bottom+q.bottom,left:R.left-_.left+q.left,right:_.right-R.right+q.right},U=t.modifiersData.offset;if(m===v&&U){var F=U[r];Object.keys(Q).forEach((function(t){var n=[f,u].indexOf(t)>=0?1:-1,e=[a,u].indexOf(t)>=0?"y":"x";Q[t]+=F[e]*n}))}return Q}function at(t,n){void 0===n&&(n={});var e=n.boundary,r=n.rootBoundary,i=n.padding,o=n.flipVariations,a=n.allowedAutoPlacements,u=void 0===a?m:a,f=Q(n.placement),c=f?o?b:b.filter((function(t){return Q(t)===f})):l,s=c.filter((function(t){return u.indexOf(t)>=0}));0===s.length&&(s=c);var p=s.reduce((function(n,o){return n[o]=ot(t,{placement:o,boundary:e,rootBoundary:r,padding:i})[k(o)],n}),{});return Object.keys(p).sort((function(t,n){return p[t]-p[n]}))}var ut={name:"flip",enabled:!0,phase:"main",fn:function(t){var n=t.state,e=t.options,r=t.name;if(!n.modifiersData[r]._skip){for(var i=e.mainAxis,o=void 0===i||i,l=e.altAxis,d=void 0===l||l,h=e.fallbackPlacements,v=e.padding,b=e.boundary,m=e.rootBoundary,y=e.altBoundary,w=e.flipVariations,x=void 0===w||w,g=e.allowedAutoPlacements,O=n.options.placement,j=k(O),M=h||(j!==O&&x?function(t){if(k(t)===s)return[];var n=J(t);return[N(t),n,N(n)]}(O):[J(O)]),E=[O].concat(M).reduce((function(t,e){return t.concat(k(e)===s?at(n,{placement:e,boundary:b,rootBoundary:m,padding:v,flipVariations:x,allowedAutoPlacements:g}):e)}),[]),q=n.rects.reference,A=n.rects.popper,B=new Map,P=!0,R=E[0],z=0;z<E.length;z++){var L=E[z],S=k(L),W=Q(L)===p,C=[a,u].indexOf(S)>=0,H=C?"width":"height",T=ot(n,{placement:L,boundary:b,rootBoundary:m,altBoundary:y,padding:v}),I=C?W?f:c:W?u:a;q[H]>A[H]&&(I=J(I));var _=J(I),D=[];if(o&&D.push(T[S]<=0),d&&D.push(T[I]<=0,T[_]<=0),D.every((function(t){return t}))){R=L,P=!1;break}B.set(L,D)}if(P)for(var V=function(t){var n=E.find((function(n){var e=B.get(n);if(e)return e.slice(0,t).every((function(t){return t}))}));if(n)return R=n,"break"},U=x?3:1;U>0&&"break"!==V(U);U--);n.placement!==R&&(n.modifiersData[r]._skip=!0,n.placement=R,n.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ft(t,n,e){return void 0===e&&(e={x:0,y:0}),{top:t.top-n.height-e.y,right:t.right-n.width+e.x,bottom:t.bottom-n.height+e.y,left:t.left-n.width-e.x}}function ct(t){return[a,f,u,c].some((function(n){return t[n]>=0}))}function st(t,n,e){void 0===e&&(e=!1);var r,i,o=O(n),a=O(n)&&function(t){var n=t.getBoundingClientRect(),e=q(n.width)/t.offsetWidth||1,r=q(n.height)/t.offsetHeight||1;return 1!==e||1!==r}(n),u=W(n),f=P(t,a,e),c={scrollLeft:0,scrollTop:0},s={x:0,y:0};return(o||!o&&!e)&&(("body"!==w(n)||$(u))&&(c=(r=n)!==x(r)&&O(r)?{scrollLeft:(i=r).scrollLeft,scrollTop:i.scrollTop}:X(r)),O(n)?((s=P(n,!0)).x+=n.clientLeft,s.y+=n.clientTop):u&&(s.x=Z(u))),{x:f.left+c.scrollLeft-s.x,y:f.top+c.scrollTop-s.y,width:f.width,height:f.height}}function lt(t){var n=new Map,e=new Set,r=[];function i(t){e.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!e.has(t)){var r=n.get(t);r&&i(r)}})),r.push(t)}return t.forEach((function(t){n.set(t.name,t)})),t.forEach((function(t){e.has(t.name)||i(t)})),r}var pt={placement:"bottom",modifiers:[],strategy:"absolute"};function dt(){for(var t=arguments.length,n=new Array(t),e=0;e<t;e++)n[e]=arguments[e];return!n.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function ht(t){void 0===t&&(t={});var n=t.defaultModifiers,e=void 0===n?[]:n,r=t.defaultOptions,i=void 0===r?pt:r;return function(t,n,r){void 0===r&&(r=i);var o,a,u={placement:"bottom",orderedModifiers:[],options:Object.assign({},pt,i),modifiersData:{},elements:{reference:t,popper:n},attributes:{},styles:{}},f=[],c=!1,s={state:u,setOptions:function(r){var o="function"==typeof r?r(u.options):r;l(),u.options=Object.assign({},i,u.options,o),u.scrollParents={reference:g(t)?nt(t):t.contextElement?nt(t.contextElement):[],popper:nt(n)};var a,c,p=function(t){var n=lt(t);return y.reduce((function(t,e){return t.concat(n.filter((function(t){return t.phase===e})))}),[])}((a=[].concat(e,u.options.modifiers),c=a.reduce((function(t,n){var e=t[n.name];return t[n.name]=e?Object.assign({},e,n,{options:Object.assign({},e.options,n.options),data:Object.assign({},e.data,n.data)}):n,t}),{}),Object.keys(c).map((function(t){return c[t]}))));return u.orderedModifiers=p.filter((function(t){return t.enabled})),u.orderedModifiers.forEach((function(t){var n=t.options,e=t.effect;if("function"==typeof e){var r=e({state:u,name:t.name,instance:s,options:void 0===n?{}:n});f.push(r||function(){})}})),s.update()},forceUpdate:function(){if(!c){var t=u.elements,n=t.reference,e=t.popper;if(dt(n,e)){u.rects={reference:st(n,T(e),"fixed"===u.options.strategy),popper:R(e)},u.reset=!1,u.placement=u.options.placement,u.orderedModifiers.forEach((function(t){return u.modifiersData[t.name]=Object.assign({},t.data)}));for(var r=0;r<u.orderedModifiers.length;r++)if(!0!==u.reset){var i=u.orderedModifiers[r],o=i.fn,a=i.options;"function"==typeof o&&(u=o({state:u,options:void 0===a?{}:a,name:i.name,instance:s})||u)}else u.reset=!1,r=-1}}},update:(o=function(){return new Promise((function(t){s.forceUpdate(),t(u)}))},function(){return a||(a=new Promise((function(t){Promise.resolve().then((function(){a=void 0,t(o())}))}))),a}),destroy:function(){l(),c=!0}};if(!dt(t,n))return s;function l(){f.forEach((function(t){return t()})),f=[]}return s.setOptions(r).then((function(t){!c&&r.onFirstUpdate&&r.onFirstUpdate(t)})),s}}var vt=ht({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var n=t.state,e=t.instance,r=t.options,i=r.scroll,o=void 0===i||i,a=r.resize,u=void 0===a||a,f=x(n.elements.popper),c=[].concat(n.scrollParents.reference,n.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",e.update,G)})),u&&f.addEventListener("resize",e.update,G),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",e.update,G)})),u&&f.removeEventListener("resize",e.update,G)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var n=t.state;n.modifiersData[t.name]=it({reference:n.rects.reference,element:n.rects.popper,placement:n.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var n=t.state,e=t.options,r=e.gpuAcceleration,i=void 0===r||r,o=e.adaptive,a=void 0===o||o,u=e.roundOffsets,f=void 0===u||u,c={placement:k(n.placement),variation:Q(n.placement),popper:n.elements.popper,popperRect:n.rects.popper,gpuAcceleration:i,isFixed:"fixed"===n.options.strategy};null!=n.modifiersData.popperOffsets&&(n.styles.popper=Object.assign({},n.styles.popper,F(Object.assign({},c,{offsets:n.modifiersData.popperOffsets,position:n.options.strategy,adaptive:a,roundOffsets:f})))),null!=n.modifiersData.arrow&&(n.styles.arrow=Object.assign({},n.styles.arrow,F(Object.assign({},c,{offsets:n.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),n.attributes.popper=Object.assign({},n.attributes.popper,{"data-popper-placement":n.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var n=t.state;Object.keys(n.elements).forEach((function(t){var e=n.styles[t]||{},r=n.attributes[t]||{},i=n.elements[t];O(i)&&w(i)&&(Object.assign(i.style,e),Object.keys(r).forEach((function(t){var n=r[t];!1===n?i.removeAttribute(t):i.setAttribute(t,!0===n?"":n)})))}))},effect:function(t){var n=t.state,e={popper:{position:n.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(n.elements.popper.style,e.popper),n.styles=e,n.elements.arrow&&Object.assign(n.elements.arrow.style,e.arrow),function(){Object.keys(n.elements).forEach((function(t){var r=n.elements[t],i=n.attributes[t]||{},o=Object.keys(n.styles.hasOwnProperty(t)?n.styles[t]:e[t]).reduce((function(t,n){return t[n]="",t}),{});O(r)&&w(r)&&(Object.assign(r.style,o),Object.keys(i).forEach((function(t){r.removeAttribute(t)})))}))}},requires:["computeStyles"]},{name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var n=t.state,e=t.name,r=t.options.offset,i=void 0===r?[0,0]:r,o=m.reduce((function(t,e){return t[e]=function(t,n,e){var r=k(t),i=[c,a].indexOf(r)>=0?-1:1,o="function"==typeof e?e(Object.assign({},n,{placement:t})):e,u=o[0],s=o[1];return u=u||0,s=(s||0)*i,[c,f].indexOf(r)>=0?{x:s,y:u}:{x:u,y:s}}(e,n.rects,i),t}),{}),u=o[n.placement],s=u.y;null!=n.modifiersData.popperOffsets&&(n.modifiersData.popperOffsets.x+=u.x,n.modifiersData.popperOffsets.y+=s),n.modifiersData[e]=o}},ut,{name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var n=t.state,e=t.options,r=t.name,i=e.mainAxis,o=void 0===i||i,s=e.altAxis,l=void 0!==s&&s,d=e.tether,h=void 0===d||d,v=e.tetherOffset,b=void 0===v?0:v,m=ot(n,{boundary:e.boundary,rootBoundary:e.rootBoundary,padding:e.padding,altBoundary:e.altBoundary}),y=k(n.placement),w=Q(n.placement),x=!w,g=I(y),O="x"===g?"y":"x",j=n.modifiersData.popperOffsets,q=n.rects.reference,A=n.rects.popper,B="function"==typeof b?b(Object.assign({},n.rects,{placement:n.placement})):b,P="number"==typeof B?{mainAxis:B,altAxis:B}:Object.assign({mainAxis:0,altAxis:0},B),z=n.modifiersData.offset?n.modifiersData.offset[n.placement]:null,L={x:0,y:0};if(j){if(o){var S,W="y"===g?a:c,C="y"===g?u:f,H="y"===g?"height":"width",D=j[g],V=D+m[W],U=D-m[C],F=h?-A[H]/2:0,G=w===p?q[H]:A[H],Y=w===p?-A[H]:-q[H],J=n.elements.arrow,K=h&&J?R(J):{width:0,height:0},N=n.modifiersData["arrow#persistent"]?n.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},X=N[W],Z=N[C],$=_(0,q[H],K[H]),tt=x?q[H]/2-F-$-X-P.mainAxis:G-$-X-P.mainAxis,nt=x?-q[H]/2+F+$+Z+P.mainAxis:Y+$+Z+P.mainAxis,et=n.elements.arrow&&T(n.elements.arrow),rt=null!=(S=null==z?void 0:z[g])?S:0,it=D+nt-rt,at=_(h?E(V,D+tt-rt-(et?"y"===g?et.clientTop||0:et.clientLeft||0:0)):V,D,h?M(U,it):U);j[g]=at,L[g]=at-D}if(l){var ut,ft=j[O],ct="y"===O?"height":"width",st=ft+m["x"===g?a:c],lt=ft-m["x"===g?u:f],pt=-1!==[a,c].indexOf(y),dt=null!=(ut=null==z?void 0:z[O])?ut:0,ht=pt?st:ft-q[ct]-A[ct]-dt+P.altAxis,vt=pt?ft+q[ct]+A[ct]-dt-P.altAxis:lt,bt=h&&pt?function(t,n,e){var r=_(t,n,e);return r>e?e:r}(ht,ft,vt):_(h?ht:st,ft,h?vt:lt);j[O]=bt,L[O]=bt-ft}n.modifiersData[r]=L}},requiresIfExists:["offset"]},{name:"arrow",enabled:!0,phase:"main",fn:function(t){var n,e=t.state,r=t.name,i=t.options,o=e.elements.arrow,s=e.modifiersData.popperOffsets,p=k(e.placement),d=I(p),h=[c,f].indexOf(p)>=0?"height":"width";if(o&&s){var v=function(t,n){return D("number"!=typeof(t="function"==typeof t?t(Object.assign({},n.rects,{placement:n.placement})):t)?t:V(t,l))}(i.padding,e),b=R(o),m="y"===d?a:c,y="y"===d?u:f,w=e.rects.reference[h]+e.rects.reference[d]-s[d]-e.rects.popper[h],x=s[d]-e.rects.reference[d],g=T(o),O=g?"y"===d?g.clientHeight||0:g.clientWidth||0:0,j=O/2-b[h]/2+(w/2-x/2),M=_(v[m],j,O-b[h]-v[y]);e.modifiersData[r]=((n={})[d]=M,n.centerOffset=M-j,n)}},effect:function(t){var n=t.state,e=t.options.element,r=void 0===e?"[data-popper-arrow]":e;null!=r&&("string"!=typeof r||(r=n.elements.popper.querySelector(r)))&&z(n.elements.popper,r)&&(n.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var n=t.state,e=t.name,r=n.rects.reference,i=n.rects.popper,o=n.modifiersData.preventOverflow,a=ot(n,{elementContext:"reference"}),u=ot(n,{altBoundary:!0}),f=ft(a,r),c=ft(u,i,o),s=ct(f),l=ct(c);n.modifiersData[e]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:s,hasPopperEscaped:l},n.attributes.popper=Object.assign({},n.attributes.popper,{"data-popper-reference-hidden":s,"data-popper-escaped":l})}}]});const bt=class{constructor(e){t(this,e),this.showEvent=n(this,"showEvent"),this.hideEvent=n(this,"hideEvent"),this.placement="bottom",this.offset=[0,10],this.strategy="absolute",this.trigger="click",this.isOpen=!1}componentDidLoad(){this.popperInstance=vt(this.anchorRef,this.popperContentRef,this.popperOptions),"click"===this.trigger?window.addEventListener("click",this.handleClick.bind(this)):"hover"===this.trigger?(this.anchorRef.addEventListener("mouseenter",this.show.bind(this)),this.anchorRef.addEventListener("mouseleave",this.hide.bind(this)),this.popperContentRef.addEventListener("mouseenter",this.show.bind(this)),this.popperContentRef.addEventListener("mouseleave",this.hide.bind(this))):"focus"===this.trigger&&(this.anchorRef.addEventListener("focus",this.show.bind(this)),this.anchorRef.addEventListener("blur",this.hide.bind(this)))}disconnectedCallback(){"click"===this.trigger?window.removeEventListener("click",this.handleClick.bind(this)):"hover"===this.trigger?(this.anchorRef.removeEventListener("mouseenter",this.show.bind(this)),this.anchorRef.removeEventListener("mouseleave",this.hide.bind(this)),this.popperContentRef.removeEventListener("mouseenter",this.show.bind(this)),this.popperContentRef.removeEventListener("mouseleave",this.hide.bind(this))):"focus"===this.trigger&&(this.anchorRef.removeEventListener("focus",this.show.bind(this)),this.anchorRef.removeEventListener("blur",this.hide.bind(this)))}handleClick(t){const n=t.composedPath(),e=n.includes(this.anchorRef),r=n.includes(this.popperContentRef);!this.isOpen&&e?this.show():(this.isOpen&&!r||this.isOpen&&e)&&this.hide()}get popperOptions(){return{placement:this.placement,modifiers:[{name:"offset",options:{offset:this.offset}}],strategy:this.strategy}}show(){this.isOpen=!0,this.popperContentRef.setAttribute("data-show",""),this.popperInstance.update(),this.showEvent.emit()}hide(){this.isOpen=!1,this.popperContentRef.removeAttribute("data-show"),this.popperInstance.update(),this.hideEvent.emit()}render(){return e("div",{key:"73b07cca3eacc4041a0aba80818eab407e92b833"},e("style",{key:"767463c48efc2828e9e9c48dacd2db0568d6a751"},"\n .popper-content {\n display: none;\n }\n .popper-content[data-show] {\n display: block;\n z-index: 1030;\n }\n "),e("div",{key:"284486020e76357a378fdc91ad899b87da27c4eb",class:"popper-content",ref:t=>this.popperContentRef=t},e("slot",{key:"c317e502124dc6ff11c7c4a606f09f4f69adffeb"})))}},mt=class{constructor(n){t(this,n)}show(){this.tooltip.classList.add("show")}hide(){this.tooltip.classList.remove("show")}render(){return this.helpText?e("div",{class:"tooltip-container"},e("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-question-square tooltip-icon",viewBox:"0 0 16 16",ref:t=>this.anchorIcon=t,part:o},e("path",{d:"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"}),e("path",{d:"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94"})),e("custom-popper",{trigger:"hover",placement:"top",anchorRef:this.anchorIcon},e("div",{class:"tooltip bs-tooltip-top",part:r,role:"tooltip",ref:t=>this.tooltip=t},e("div",{class:"tooltip-inner",part:i},this.helpText)))):null}};export{bt as custom_popper,mt as form_control_tooltip}
1
+ import{r as t,c as n,h as e}from"./p-DwYM91AU.js";import{aA as r,aB as i,aC as o}from"./p-sA8HBfkI.js";var a="top",u="bottom",f="right",s="left",c="auto",l=[a,u,f,s],p="start",d="end",h="viewport",v="popper",b=l.reduce((function(t,n){return t.concat([n+"-"+p,n+"-"+d])}),[]),m=[].concat(l,[c]).reduce((function(t,n){return t.concat([n,n+"-"+p,n+"-"+d])}),[]),y=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function w(t){return t?(t.nodeName||"").toLowerCase():null}function x(t){if(null==t)return window;if("[object Window]"!==t.toString()){var n=t.ownerDocument;return n&&n.defaultView||window}return t}function g(t){return t instanceof x(t).Element||t instanceof Element}function O(t){return t instanceof x(t).HTMLElement||t instanceof HTMLElement}function j(t){return"undefined"!=typeof ShadowRoot&&(t instanceof x(t).ShadowRoot||t instanceof ShadowRoot)}function k(t){return t.split("-")[0]}var M=Math.max,A=Math.min,B=Math.round;function E(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function q(){return!/^((?!chrome|android).)*safari/i.test(E())}function P(t,n,e){void 0===n&&(n=!1),void 0===e&&(e=!1);var r=t.getBoundingClientRect(),i=1,o=1;n&&O(t)&&(i=t.offsetWidth>0&&B(r.width)/t.offsetWidth||1,o=t.offsetHeight>0&&B(r.height)/t.offsetHeight||1);var a=(g(t)?x(t):window).visualViewport,u=!q()&&e,f=(r.left+(u&&a?a.offsetLeft:0))/i,s=(r.top+(u&&a?a.offsetTop:0))/o,c=r.width/i,l=r.height/o;return{width:c,height:l,top:s,right:f+c,bottom:s+l,left:f,x:f,y:s}}function R(t){var n=P(t),e=t.offsetWidth,r=t.offsetHeight;return Math.abs(n.width-e)<=1&&(e=n.width),Math.abs(n.height-r)<=1&&(r=n.height),{x:t.offsetLeft,y:t.offsetTop,width:e,height:r}}function C(t,n){var e=n.getRootNode&&n.getRootNode();if(t.contains(n))return!0;if(e&&j(e)){var r=n;do{if(r&&t.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function H(t){return x(t).getComputedStyle(t)}function L(t){return["table","td","th"].indexOf(w(t))>=0}function S(t){return((g(t)?t.ownerDocument:t.document)||window.document).documentElement}function W(t){return"html"===w(t)?t:t.assignedSlot||t.parentNode||(j(t)?t.host:null)||S(t)}function z(t){return O(t)&&"fixed"!==H(t).position?t.offsetParent:null}function I(t){for(var n=x(t),e=z(t);e&&L(e)&&"static"===H(e).position;)e=z(e);return e&&("html"===w(e)||"body"===w(e)&&"static"===H(e).position)?n:e||function(t){var n=/firefox/i.test(E());if(/Trident/i.test(E())&&O(t)&&"fixed"===H(t).position)return null;var e=W(t);for(j(e)&&(e=e.host);O(e)&&["html","body"].indexOf(w(e))<0;){var r=H(e);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||n&&"filter"===r.willChange||n&&r.filter&&"none"!==r.filter)return e;e=e.parentNode}return null}(t)||n}function T(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function _(t,n,e){return M(t,A(n,e))}function D(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function V(t,n){return n.reduce((function(n,e){return n[e]=t,n}),{})}function U(t){return t.split("-")[1]}var F={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Y(t){var n,e=t.popper,r=t.popperRect,i=t.placement,o=t.variation,c=t.offsets,l=t.position,p=t.gpuAcceleration,h=t.adaptive,v=t.roundOffsets,b=t.isFixed,m=c.x,y=void 0===m?0:m,w=c.y,g=void 0===w?0:w,O="function"==typeof v?v({x:y,y:g}):{x:y,y:g};y=O.x,g=O.y;var j=c.hasOwnProperty("x"),k=c.hasOwnProperty("y"),M=s,A=a,E=window;if(h){var q=I(e),P="clientHeight",R="clientWidth";q===x(e)&&"static"!==H(q=S(e)).position&&"absolute"===l&&(P="scrollHeight",R="scrollWidth"),(i===a||(i===s||i===f)&&o===d)&&(A=u,g-=(b&&q===E&&E.visualViewport?E.visualViewport.height:q[P])-r.height,g*=p?1:-1),i!==s&&(i!==a&&i!==u||o!==d)||(M=f,y-=(b&&q===E&&E.visualViewport?E.visualViewport.width:q[R])-r.width,y*=p?1:-1)}var C,L=Object.assign({position:l},h&&F),W=!0===v?function(t,n){var e=t.y,r=n.devicePixelRatio||1;return{x:B(t.x*r)/r||0,y:B(e*r)/r||0}}({x:y,y:g},x(e)):{x:y,y:g};return y=W.x,g=W.y,Object.assign({},L,p?((C={})[A]=k?"0":"",C[M]=j?"0":"",C.transform=(E.devicePixelRatio||1)<=1?"translate("+y+"px, "+g+"px)":"translate3d("+y+"px, "+g+"px, 0)",C):((n={})[A]=k?g+"px":"",n[M]=j?y+"px":"",n.transform="",n))}var G={passive:!0},J={left:"right",right:"left",bottom:"top",top:"bottom"};function K(t){return t.replace(/left|right|bottom|top/g,(function(t){return J[t]}))}var N={start:"end",end:"start"};function Q(t){return t.replace(/start|end/g,(function(t){return N[t]}))}function X(t){var n=x(t);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function Z(t){return P(S(t)).left+X(t).scrollLeft}function $(t){var n=H(t);return/auto|scroll|overlay|hidden/.test(n.overflow+n.overflowY+n.overflowX)}function tt(t){return["html","body","#document"].indexOf(w(t))>=0?t.ownerDocument.body:O(t)&&$(t)?t:tt(W(t))}function nt(t,n){var e;void 0===n&&(n=[]);var r=tt(t),i=r===(null==(e=t.ownerDocument)?void 0:e.body),o=x(r),a=i?[o].concat(o.visualViewport||[],$(r)?r:[]):r,u=n.concat(a);return i?u:u.concat(nt(W(a)))}function et(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function rt(t,n,e){return n===h?et(function(t,n){var e=x(t),r=S(t),i=e.visualViewport,o=r.clientWidth,a=r.clientHeight,u=0,f=0;if(i){o=i.width,a=i.height;var s=q();(s||!s&&"fixed"===n)&&(u=i.offsetLeft,f=i.offsetTop)}return{width:o,height:a,x:u+Z(t),y:f}}(t,e)):g(n)?function(t,n){var e=P(t,!1,"fixed"===n);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(n,e):et(function(t){var n,e=S(t),r=X(t),i=null==(n=t.ownerDocument)?void 0:n.body,o=M(e.scrollWidth,e.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=M(e.scrollHeight,e.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),u=-r.scrollLeft+Z(t),f=-r.scrollTop;return"rtl"===H(i||e).direction&&(u+=M(e.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:u,y:f}}(S(t)))}function it(t){var n,e=t.reference,r=t.element,i=t.placement,o=i?k(i):null,c=i?U(i):null,l=e.x+e.width/2-r.width/2,h=e.y+e.height/2-r.height/2;switch(o){case a:n={x:l,y:e.y-r.height};break;case u:n={x:l,y:e.y+e.height};break;case f:n={x:e.x+e.width,y:h};break;case s:n={x:e.x-r.width,y:h};break;default:n={x:e.x,y:e.y}}var v=o?T(o):null;if(null!=v){var b="y"===v?"height":"width";switch(c){case p:n[v]=n[v]-(e[b]/2-r[b]/2);break;case d:n[v]=n[v]+(e[b]/2-r[b]/2)}}return n}function ot(t,n){void 0===n&&(n={});var e=n.placement,r=void 0===e?t.placement:e,i=n.strategy,o=void 0===i?t.strategy:i,s=n.boundary,c=void 0===s?"clippingParents":s,p=n.rootBoundary,d=void 0===p?h:p,b=n.elementContext,m=void 0===b?v:b,y=n.altBoundary,x=void 0!==y&&y,j=n.padding,k=void 0===j?0:j,B=D("number"!=typeof k?k:V(k,l)),E=t.rects.popper,q=t.elements[x?m===v?"reference":v:m],R=function(t,n,e,r){var i="clippingParents"===n?function(t){var n=nt(W(t)),e=["absolute","fixed"].indexOf(H(t).position)>=0&&O(t)?I(t):t;return g(e)?n.filter((function(t){return g(t)&&C(t,e)&&"body"!==w(t)})):[]}(t):[].concat(n),o=[].concat(i,[e]),a=o.reduce((function(n,e){var i=rt(t,e,r);return n.top=M(i.top,n.top),n.right=A(i.right,n.right),n.bottom=A(i.bottom,n.bottom),n.left=M(i.left,n.left),n}),rt(t,o[0],r));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(g(q)?q:q.contextElement||S(t.elements.popper),c,d,o),L=P(t.elements.reference),z=it({reference:L,element:E,placement:r}),T=et(Object.assign({},E,z)),_=m===v?T:L,U={top:R.top-_.top+B.top,bottom:_.bottom-R.bottom+B.bottom,left:R.left-_.left+B.left,right:_.right-R.right+B.right},F=t.modifiersData.offset;if(m===v&&F){var Y=F[r];Object.keys(U).forEach((function(t){var n=[f,u].indexOf(t)>=0?1:-1,e=[a,u].indexOf(t)>=0?"y":"x";U[t]+=Y[e]*n}))}return U}function at(t,n){void 0===n&&(n={});var e=n.boundary,r=n.rootBoundary,i=n.padding,o=n.flipVariations,a=n.allowedAutoPlacements,u=void 0===a?m:a,f=U(n.placement),s=f?o?b:b.filter((function(t){return U(t)===f})):l,c=s.filter((function(t){return u.indexOf(t)>=0}));0===c.length&&(c=s);var p=c.reduce((function(n,o){return n[o]=ot(t,{placement:o,boundary:e,rootBoundary:r,padding:i})[k(o)],n}),{});return Object.keys(p).sort((function(t,n){return p[t]-p[n]}))}var ut={name:"flip",enabled:!0,phase:"main",fn:function(t){var n=t.state,e=t.options,r=t.name;if(!n.modifiersData[r]._skip){for(var i=e.mainAxis,o=void 0===i||i,l=e.altAxis,d=void 0===l||l,h=e.fallbackPlacements,v=e.padding,b=e.boundary,m=e.rootBoundary,y=e.altBoundary,w=e.flipVariations,x=void 0===w||w,g=e.allowedAutoPlacements,O=n.options.placement,j=k(O),M=h||(j!==O&&x?function(t){if(k(t)===c)return[];var n=K(t);return[Q(t),n,Q(n)]}(O):[K(O)]),A=[O].concat(M).reduce((function(t,e){return t.concat(k(e)===c?at(n,{placement:e,boundary:b,rootBoundary:m,padding:v,flipVariations:x,allowedAutoPlacements:g}):e)}),[]),B=n.rects.reference,E=n.rects.popper,q=new Map,P=!0,R=A[0],C=0;C<A.length;C++){var H=A[C],L=k(H),S=U(H)===p,W=[a,u].indexOf(L)>=0,z=W?"width":"height",I=ot(n,{placement:H,boundary:b,rootBoundary:m,altBoundary:y,padding:v}),T=W?S?f:s:S?u:a;B[z]>E[z]&&(T=K(T));var _=K(T),D=[];if(o&&D.push(I[L]<=0),d&&D.push(I[T]<=0,I[_]<=0),D.every((function(t){return t}))){R=H,P=!1;break}q.set(H,D)}if(P)for(var V=function(t){var n=A.find((function(n){var e=q.get(n);if(e)return e.slice(0,t).every((function(t){return t}))}));if(n)return R=n,"break"},F=x?3:1;F>0&&"break"!==V(F);F--);n.placement!==R&&(n.modifiersData[r]._skip=!0,n.placement=R,n.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ft(t,n,e){return void 0===e&&(e={x:0,y:0}),{top:t.top-n.height-e.y,right:t.right-n.width+e.x,bottom:t.bottom-n.height+e.y,left:t.left-n.width-e.x}}function st(t){return[a,f,u,s].some((function(n){return t[n]>=0}))}function ct(t,n,e){void 0===e&&(e=!1);var r,i,o=O(n),a=O(n)&&function(t){var n=t.getBoundingClientRect(),e=B(n.width)/t.offsetWidth||1,r=B(n.height)/t.offsetHeight||1;return 1!==e||1!==r}(n),u=S(n),f=P(t,a,e),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(o||!o&&!e)&&(("body"!==w(n)||$(u))&&(s=(r=n)!==x(r)&&O(r)?{scrollLeft:(i=r).scrollLeft,scrollTop:i.scrollTop}:X(r)),O(n)?((c=P(n,!0)).x+=n.clientLeft,c.y+=n.clientTop):u&&(c.x=Z(u))),{x:f.left+s.scrollLeft-c.x,y:f.top+s.scrollTop-c.y,width:f.width,height:f.height}}function lt(t){var n=new Map,e=new Set,r=[];function i(t){e.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!e.has(t)){var r=n.get(t);r&&i(r)}})),r.push(t)}return t.forEach((function(t){n.set(t.name,t)})),t.forEach((function(t){e.has(t.name)||i(t)})),r}var pt={placement:"bottom",modifiers:[],strategy:"absolute"};function dt(){for(var t=arguments.length,n=new Array(t),e=0;e<t;e++)n[e]=arguments[e];return!n.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function ht(t){void 0===t&&(t={});var n=t.defaultModifiers,e=void 0===n?[]:n,r=t.defaultOptions,i=void 0===r?pt:r;return function(t,n,r){void 0===r&&(r=i);var o,a,u={placement:"bottom",orderedModifiers:[],options:Object.assign({},pt,i),modifiersData:{},elements:{reference:t,popper:n},attributes:{},styles:{}},f=[],s=!1,c={state:u,setOptions:function(r){var o="function"==typeof r?r(u.options):r;l(),u.options=Object.assign({},i,u.options,o),u.scrollParents={reference:g(t)?nt(t):t.contextElement?nt(t.contextElement):[],popper:nt(n)};var a,s,p=function(t){var n=lt(t);return y.reduce((function(t,e){return t.concat(n.filter((function(t){return t.phase===e})))}),[])}((a=[].concat(e,u.options.modifiers),s=a.reduce((function(t,n){var e=t[n.name];return t[n.name]=e?Object.assign({},e,n,{options:Object.assign({},e.options,n.options),data:Object.assign({},e.data,n.data)}):n,t}),{}),Object.keys(s).map((function(t){return s[t]}))));return u.orderedModifiers=p.filter((function(t){return t.enabled})),u.orderedModifiers.forEach((function(t){var n=t.options,e=t.effect;if("function"==typeof e){var r=e({state:u,name:t.name,instance:c,options:void 0===n?{}:n});f.push(r||function(){})}})),c.update()},forceUpdate:function(){if(!s){var t=u.elements,n=t.reference,e=t.popper;if(dt(n,e)){u.rects={reference:ct(n,I(e),"fixed"===u.options.strategy),popper:R(e)},u.reset=!1,u.placement=u.options.placement,u.orderedModifiers.forEach((function(t){return u.modifiersData[t.name]=Object.assign({},t.data)}));for(var r=0;r<u.orderedModifiers.length;r++)if(!0!==u.reset){var i=u.orderedModifiers[r],o=i.fn,a=i.options;"function"==typeof o&&(u=o({state:u,options:void 0===a?{}:a,name:i.name,instance:c})||u)}else u.reset=!1,r=-1}}},update:(o=function(){return new Promise((function(t){c.forceUpdate(),t(u)}))},function(){return a||(a=new Promise((function(t){Promise.resolve().then((function(){a=void 0,t(o())}))}))),a}),destroy:function(){l(),s=!0}};if(!dt(t,n))return c;function l(){f.forEach((function(t){return t()})),f=[]}return c.setOptions(r).then((function(t){!s&&r.onFirstUpdate&&r.onFirstUpdate(t)})),c}}var vt=ht({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var n=t.state,e=t.instance,r=t.options,i=r.scroll,o=void 0===i||i,a=r.resize,u=void 0===a||a,f=x(n.elements.popper),s=[].concat(n.scrollParents.reference,n.scrollParents.popper);return o&&s.forEach((function(t){t.addEventListener("scroll",e.update,G)})),u&&f.addEventListener("resize",e.update,G),function(){o&&s.forEach((function(t){t.removeEventListener("scroll",e.update,G)})),u&&f.removeEventListener("resize",e.update,G)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var n=t.state;n.modifiersData[t.name]=it({reference:n.rects.reference,element:n.rects.popper,placement:n.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var n=t.state,e=t.options,r=e.gpuAcceleration,i=void 0===r||r,o=e.adaptive,a=void 0===o||o,u=e.roundOffsets,f=void 0===u||u,s={placement:k(n.placement),variation:U(n.placement),popper:n.elements.popper,popperRect:n.rects.popper,gpuAcceleration:i,isFixed:"fixed"===n.options.strategy};null!=n.modifiersData.popperOffsets&&(n.styles.popper=Object.assign({},n.styles.popper,Y(Object.assign({},s,{offsets:n.modifiersData.popperOffsets,position:n.options.strategy,adaptive:a,roundOffsets:f})))),null!=n.modifiersData.arrow&&(n.styles.arrow=Object.assign({},n.styles.arrow,Y(Object.assign({},s,{offsets:n.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),n.attributes.popper=Object.assign({},n.attributes.popper,{"data-popper-placement":n.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var n=t.state;Object.keys(n.elements).forEach((function(t){var e=n.styles[t]||{},r=n.attributes[t]||{},i=n.elements[t];O(i)&&w(i)&&(Object.assign(i.style,e),Object.keys(r).forEach((function(t){var n=r[t];!1===n?i.removeAttribute(t):i.setAttribute(t,!0===n?"":n)})))}))},effect:function(t){var n=t.state,e={popper:{position:n.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(n.elements.popper.style,e.popper),n.styles=e,n.elements.arrow&&Object.assign(n.elements.arrow.style,e.arrow),function(){Object.keys(n.elements).forEach((function(t){var r=n.elements[t],i=n.attributes[t]||{},o=Object.keys(n.styles.hasOwnProperty(t)?n.styles[t]:e[t]).reduce((function(t,n){return t[n]="",t}),{});O(r)&&w(r)&&(Object.assign(r.style,o),Object.keys(i).forEach((function(t){r.removeAttribute(t)})))}))}},requires:["computeStyles"]},{name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var n=t.state,e=t.name,r=t.options.offset,i=void 0===r?[0,0]:r,o=m.reduce((function(t,e){return t[e]=function(t,n,e){var r=k(t),i=[s,a].indexOf(r)>=0?-1:1,o="function"==typeof e?e(Object.assign({},n,{placement:t})):e,u=o[0],c=o[1];return u=u||0,c=(c||0)*i,[s,f].indexOf(r)>=0?{x:c,y:u}:{x:u,y:c}}(e,n.rects,i),t}),{}),u=o[n.placement],c=u.y;null!=n.modifiersData.popperOffsets&&(n.modifiersData.popperOffsets.x+=u.x,n.modifiersData.popperOffsets.y+=c),n.modifiersData[e]=o}},ut,{name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var n=t.state,e=t.options,r=t.name,i=e.mainAxis,o=void 0===i||i,c=e.altAxis,l=void 0!==c&&c,d=e.tether,h=void 0===d||d,v=e.tetherOffset,b=void 0===v?0:v,m=ot(n,{boundary:e.boundary,rootBoundary:e.rootBoundary,padding:e.padding,altBoundary:e.altBoundary}),y=k(n.placement),w=U(n.placement),x=!w,g=T(y),O="x"===g?"y":"x",j=n.modifiersData.popperOffsets,B=n.rects.reference,E=n.rects.popper,q="function"==typeof b?b(Object.assign({},n.rects,{placement:n.placement})):b,P="number"==typeof q?{mainAxis:q,altAxis:q}:Object.assign({mainAxis:0,altAxis:0},q),C=n.modifiersData.offset?n.modifiersData.offset[n.placement]:null,H={x:0,y:0};if(j){if(o){var L,S="y"===g?a:s,W="y"===g?u:f,z="y"===g?"height":"width",D=j[g],V=D+m[S],F=D-m[W],Y=h?-E[z]/2:0,G=w===p?B[z]:E[z],J=w===p?-E[z]:-B[z],K=n.elements.arrow,N=h&&K?R(K):{width:0,height:0},Q=n.modifiersData["arrow#persistent"]?n.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},X=Q[S],Z=Q[W],$=_(0,B[z],N[z]),tt=x?B[z]/2-Y-$-X-P.mainAxis:G-$-X-P.mainAxis,nt=x?-B[z]/2+Y+$+Z+P.mainAxis:J+$+Z+P.mainAxis,et=n.elements.arrow&&I(n.elements.arrow),rt=null!=(L=null==C?void 0:C[g])?L:0,it=D+nt-rt,at=_(h?A(V,D+tt-rt-(et?"y"===g?et.clientTop||0:et.clientLeft||0:0)):V,D,h?M(F,it):F);j[g]=at,H[g]=at-D}if(l){var ut,ft=j[O],st="y"===O?"height":"width",ct=ft+m["x"===g?a:s],lt=ft-m["x"===g?u:f],pt=-1!==[a,s].indexOf(y),dt=null!=(ut=null==C?void 0:C[O])?ut:0,ht=pt?ct:ft-B[st]-E[st]-dt+P.altAxis,vt=pt?ft+B[st]+E[st]-dt-P.altAxis:lt,bt=h&&pt?function(t,n,e){var r=_(t,n,e);return r>e?e:r}(ht,ft,vt):_(h?ht:ct,ft,h?vt:lt);j[O]=bt,H[O]=bt-ft}n.modifiersData[r]=H}},requiresIfExists:["offset"]},{name:"arrow",enabled:!0,phase:"main",fn:function(t){var n,e=t.state,r=t.name,i=t.options,o=e.elements.arrow,c=e.modifiersData.popperOffsets,p=k(e.placement),d=T(p),h=[s,f].indexOf(p)>=0?"height":"width";if(o&&c){var v=function(t,n){return D("number"!=typeof(t="function"==typeof t?t(Object.assign({},n.rects,{placement:n.placement})):t)?t:V(t,l))}(i.padding,e),b=R(o),m="y"===d?a:s,y="y"===d?u:f,w=e.rects.reference[h]+e.rects.reference[d]-c[d]-e.rects.popper[h],x=c[d]-e.rects.reference[d],g=I(o),O=g?"y"===d?g.clientHeight||0:g.clientWidth||0:0,j=O/2-b[h]/2+(w/2-x/2),M=_(v[m],j,O-b[h]-v[y]);e.modifiersData[r]=((n={})[d]=M,n.centerOffset=M-j,n)}},effect:function(t){var n=t.state,e=t.options.element,r=void 0===e?"[data-popper-arrow]":e;null!=r&&("string"!=typeof r||(r=n.elements.popper.querySelector(r)))&&C(n.elements.popper,r)&&(n.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var n=t.state,e=t.name,r=n.rects.reference,i=n.rects.popper,o=n.modifiersData.preventOverflow,a=ot(n,{elementContext:"reference"}),u=ot(n,{altBoundary:!0}),f=ft(a,r),s=ft(u,i,o),c=st(f),l=st(s);n.modifiersData[e]={referenceClippingOffsets:f,popperEscapeOffsets:s,isReferenceHidden:c,hasPopperEscaped:l},n.attributes.popper=Object.assign({},n.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":l})}}]});const bt=class{constructor(e){t(this,e),this.showEvent=n(this,"showEvent"),this.hideEvent=n(this,"hideEvent"),this.placement="bottom",this.offset=[0,10],this.strategy="absolute",this.trigger="click",this.isOpen=!1}componentDidLoad(){this.popperInstance=vt(this.anchorRef,this.popperContentRef,this.popperOptions),"click"===this.trigger?window.addEventListener("click",this.handleClick.bind(this)):"hover"===this.trigger?(this.anchorRef.addEventListener("mouseenter",this.show.bind(this)),this.anchorRef.addEventListener("mouseleave",this.hide.bind(this)),this.popperContentRef.addEventListener("mouseenter",this.show.bind(this)),this.popperContentRef.addEventListener("mouseleave",this.hide.bind(this))):"focus"===this.trigger&&(this.anchorRef.addEventListener("focus",this.show.bind(this)),this.anchorRef.addEventListener("blur",this.hide.bind(this)))}disconnectedCallback(){"click"===this.trigger?window.removeEventListener("click",this.handleClick.bind(this)):"hover"===this.trigger?(this.anchorRef.removeEventListener("mouseenter",this.show.bind(this)),this.anchorRef.removeEventListener("mouseleave",this.hide.bind(this)),this.popperContentRef.removeEventListener("mouseenter",this.show.bind(this)),this.popperContentRef.removeEventListener("mouseleave",this.hide.bind(this))):"focus"===this.trigger&&(this.anchorRef.removeEventListener("focus",this.show.bind(this)),this.anchorRef.removeEventListener("blur",this.hide.bind(this)))}handleClick(t){const n=t.composedPath(),e=n.includes(this.anchorRef),r=n.includes(this.popperContentRef);!this.isOpen&&e?this.show():(this.isOpen&&!r||this.isOpen&&e)&&this.hide()}get popperOptions(){return{placement:this.placement,modifiers:[{name:"offset",options:{offset:this.offset}}],strategy:this.strategy}}show(){this.isOpen=!0,this.popperContentRef.setAttribute("data-show",""),this.popperInstance.update(),this.showEvent.emit()}hide(){this.isOpen=!1,this.popperContentRef.removeAttribute("data-show"),this.popperInstance.update(),this.hideEvent.emit()}render(){return e("div",{key:"c3ff01a53b15d4678dcbd58e97606885a510a880"},e("style",{key:"f239956643a0f5463303992aa2466e37988a124d"},"\n .popper-content {\n display: none;\n }\n .popper-content[data-show] {\n display: block;\n z-index: 1030;\n }\n "),e("div",{key:"7b710736c1ffe73559ef53d9f1525c22785cde2e",class:"popper-content",ref:t=>this.popperContentRef=t},e("slot",{key:"116be40554b590b382ea7002f5c442d010059b48"})))}},mt=class{constructor(n){t(this,n)}show(){this.tooltip.classList.add("show")}hide(){this.tooltip.classList.remove("show")}render(){return this.helpText?e("div",{class:"tooltip-container"},e("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-question-square tooltip-icon",viewBox:"0 0 16 16",ref:t=>this.anchorIcon=t,part:o},e("path",{d:"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"}),e("path",{d:"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94"})),e("custom-popper",{trigger:"hover",placement:"top",anchorRef:this.anchorIcon},e("div",{class:"tooltip bs-tooltip-top",part:r,role:"tooltip",ref:t=>this.tooltip=t},e("div",{class:"tooltip-inner",part:i},this.helpText)))):null}};export{bt as custom_popper,mt as form_control_tooltip}
@@ -1 +1 @@
1
- import{r as a,h as e,H as s}from"./p-DwYM91AU.js";import{E as c}from"./p-CLHwhyvu.js";import{a9 as t,aa as i,ab as b,ac as d,ad as f}from"./p-QmGrQis7.js";const n=class{constructor(e){a(this,e),this.paging=c,this.params={}}render(){return e(s,{key:"7b821154b627026ef8624af6e4759e2176004676"},e("nav",{key:"7990aee285d0cc3e6f83cb59bb216439e5364df5","aria-label":"Table pagination",class:"d-flex justify-content-end gap-3"},e("ul",{key:"02c68163934ce1aabf4abd607cc28e549e20ebe1",class:"pagination m-0"},e("li",{key:"aab661ae85fc61eecd230d058f135483796769c0",class:"page-item "+(this.paging.has_previous?"":" disabled")},e("button",{key:"ef42a41831a9890186c333418b161877761674e1",class:"page-link",onClick:a=>{a.preventDefault(),this.paging.handleClickPrevious(this.paging.start_cursor)},part:this.paging.has_previous?t:i},e("span",{key:"a898a92687e4a5fec37d9dab4208430260a9f274",class:"me-1",part:b},"«"),e("span",{key:"ecc2eeedc064d405ad178b9a98ed088e12f1b2fb",part:d},"Previous"))),e("li",{key:"56569cd9f9803ead8b1180e2f982a98d7009be1f",class:"page-item "+(this.paging.has_next?"":" disabled")},e("button",{key:"c39d389ab89609e8ce11b3dd81eb5c4a50d3521f",class:"page-link",onClick:a=>{a.preventDefault(),this.paging.handleClickNext(this.paging.end_cursor)},part:this.paging.has_next?t:i},e("span",{key:"6a01458a048a524931b03df6a964fa4a0ac403ac",part:d},"Next"),e("span",{key:"f4cb3d084647c00dff30b99f751180564463443f",class:"ms-1",part:f},"»"))))))}};export{n as pagination_menu}
1
+ import{r as a,h as e,H as s}from"./p-DwYM91AU.js";import{E as c}from"./p-CLHwhyvu.js";import{ac as t,ad as i,ae as f,af as d,ag as b}from"./p-sA8HBfkI.js";const n=class{constructor(e){a(this,e),this.paging=c,this.params={}}render(){return e(s,{key:"7b821154b627026ef8624af6e4759e2176004676"},e("nav",{key:"7990aee285d0cc3e6f83cb59bb216439e5364df5","aria-label":"Table pagination",class:"d-flex justify-content-end gap-3"},e("ul",{key:"02c68163934ce1aabf4abd607cc28e549e20ebe1",class:"pagination m-0"},e("li",{key:"aab661ae85fc61eecd230d058f135483796769c0",class:"page-item "+(this.paging.has_previous?"":" disabled")},e("button",{key:"ef42a41831a9890186c333418b161877761674e1",class:"page-link",onClick:a=>{a.preventDefault(),this.paging.handleClickPrevious(this.paging.start_cursor)},part:this.paging.has_previous?t:i},e("span",{key:"a898a92687e4a5fec37d9dab4208430260a9f274",class:"me-1",part:f},"«"),e("span",{key:"ecc2eeedc064d405ad178b9a98ed088e12f1b2fb",part:d},"Previous"))),e("li",{key:"56569cd9f9803ead8b1180e2f982a98d7009be1f",class:"page-item "+(this.paging.has_next?"":" disabled")},e("button",{key:"c39d389ab89609e8ce11b3dd81eb5c4a50d3521f",class:"page-link",onClick:a=>{a.preventDefault(),this.paging.handleClickNext(this.paging.end_cursor)},part:this.paging.has_next?t:i},e("span",{key:"6a01458a048a524931b03df6a964fa4a0ac403ac",part:d},"Next"),e("span",{key:"f4cb3d084647c00dff30b99f751180564463443f",class:"ms-1",part:b},"»"))))))}};export{n as pagination_menu}
@@ -0,0 +1 @@
1
+ import{r as e,h as a}from"./p-DwYM91AU.js";import{l as t}from"./p-Bde7dY9t.js";import"./p-tGDdRx0W.js";import{c as s,a as d}from"./p-B09GVew-.js";import"./p-Cjcsf8ku.js";import{I as l,a as i}from"./p-BrRsgB8S.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{f as r,p as c,c as o}from"./p-DKGn-ILd.js";import{e as p,f,s as b,p as m,g as u,h as n}from"./p-sA8HBfkI.js";import{S as h}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import"./p-BFTU3MAI.js";import"./p-BYsgavgS.js";import"./p-HXpYMWUU.js";import"./p-DkoufM1t.js";const k=class{constructor(a){e(this,a),this.setParamsOnChange=(e,a)=>{r[e]=a},this.handleDateInput=(e,a)=>{const t=s(a,{setExactTime:!0});this.setParamsOnChange(e,t)}}componentWillLoad(){this.debouncedSetParamsOnChange=t.debounce(this.setParamsOnChange,300),Object.entries({status:this.checkoutStatus,payment_mode:this.paymentMode,checkout_id:this.checkoutId,created_after:this.createdAfter,created_before:this.createdBefore}).forEach((([e,a])=>{a&&(c[e]=a)}))}get checkoutStatusOptions(){return[{label:"All",value:""},{label:"Created",value:l.created},{label:"Completed",value:l.completed},{label:"Attempted",value:l.attempted},{label:"Expired",value:l.expired}]}get checkoutPaymentModeOptions(){return[{label:"All",value:""},{label:"E-commerce",value:i.ecom},{label:"BNPL",value:i.bnpl},{label:"Apple Pay",value:i.apple_pay}]}render(){const e=Object.assign({},r);return a(h,{key:"c2206c7d67bd443f2f96f2d60bc4ebe6b162da5a"},a("table-filters-menu",{key:"99ca406ecd7a151039c3a162063c6c88ba2fc859",params:e,clearParams:o,part:p},a("div",{key:"a0ca9f60eba3d4d396e5bf6d90d908b21c4749a5",class:"grid-cols-2 gap-3 p-1"},a("div",{key:"6aa82c8c10b08c0146c1e0d0534cb5ed50622192",class:"p-2"},a("form-control-text",{key:"eaf744421fe7f556a787df19a1987a9d631b78f2",name:"checkout_id",label:"Checkout ID",inputHandler:this.debouncedSetParamsOnChange,defaultValue:this.checkoutId||r.checkout_id,disabled:!!this.checkoutId,part:f})),a("div",{key:"baf62830725ba74fc1e51c7bea2707727bfcae80",class:"p-2"},a("form-control-select",{key:"457078decbe5d6812adaf340eb99e23ce5f55eb5",name:"status",label:"Status",options:this.checkoutStatusOptions,inputHandler:this.setParamsOnChange,defaultValue:this.checkoutStatus||r.status||"",disabled:!!this.checkoutStatus,part:b})),a("div",{key:"dfdf948a76b865dbef7f2c3e1395fec5d54d6a27",class:"p-2"},a("form-control-select",{key:"2aac09872d9b2f81cdc81a5e69380d7613aed80d",name:"payment_mode",label:"Payment Mode",options:this.checkoutPaymentModeOptions,inputHandler:this.setParamsOnChange,defaultValue:this.paymentMode||r.payment_mode||"",disabled:!!this.paymentMode,part:m})),a("div",{key:"a081fbbe866d8c3b7b6f3e0fb416b548216df13e",class:"p-2"},a("form-control-date",{key:"7dd0b6e8d043044332662e999707afb47f1aa74f",name:"created_after",label:"Created After",inputHandler:this.handleDateInput,defaultValue:d(this.createdAfter,{showInputDateTime:!0})||d(r.created_after,{showInputDateTime:!0}),showTime:!0,disabled:!!this.createdAfter,part:u})),a("div",{key:"caeb00cd04d553f8d40e2aac3c260b6780023add",class:"p-2"},a("form-control-date",{key:"b300e4c045920fef36e424e3fc584370c68fb271",name:"created_before",label:"Created Before",inputHandler:this.handleDateInput,defaultValue:d(this.createdBefore,{showInputDateTime:!0})||d(r.created_before,{showInputDateTime:!0}),showTime:!0,disabled:!!this.createdBefore,part:n})))))}};export{k as justifi_checkouts_list_filters}
@@ -0,0 +1 @@
1
+ import{h as t,r as e,c as i,H as n,g as s}from"./p-DwYM91AU.js";import{A as o}from"./p-yyedWKWX.js";import{A as a,o as r,p as l,q as c,r as h,s as d,c as p,t as u,G as y,u as g,v as b,w as f,x as m,y as v,z as M,B as w,D as k,I as P,F as x,H as E}from"./p-BrRsgB8S.js";import{S as j}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{S as A}from"./p-CsgUIrv8.js";import{G as T,v as N}from"./p-sA8HBfkI.js";import{f as I}from"./p-B09GVew-.js";import{P as C,a as D,b as S}from"./p-DkoufM1t.js";import{H as L}from"./p-DmdEjScI.js";import{H as O,b as z,h as R,i as _}from"./p-BhqSAzpT.js";import{H as B}from"./p-CQGIjIgZ.js";import{J as U,c as G}from"./p-BEu9YFnf.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as Y,a as F,b as Q}from"./p-Cjcsf8ku.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as V,a as H}from"./p-D2muobcE.js";import{C as q}from"./p-VRubcA-q.js";import{C as Z}from"./p-ZpPDShvP.js";import"./p-BYsgavgS.js";import"./p-Dr8Z8wfP.js";var W;!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"}(W||(W={}));class J{constructor(){this.api=o()}initialize(t){if(this.applePayConfig=new a(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 n=await this.api.post({endpoint:"apple_pay/process_token",authToken:t,body:i,headers:{"Sub-Account":e}});return{success:n.id&&!!n.data.token,data:n}}isAvailable(){return r.isApplePaySupported()&&r.canMakePayments()}async canMakePaymentsWithActiveCard(){if(!this.applePayConfig)throw new Error("Apple Pay not initialized. Call initialize() first.");return await r.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 n=new l(t);if(!n.isValid){const t=[];throw n.countryCode||t.push("countryCode"),n.currencyCode||t.push("currencyCode"),n.merchantCapabilities&&0!==n.merchantCapabilities.length||t.push("merchantCapabilities"),n.supportedNetworks&&0!==n.supportedNetworks.length||t.push("supportedNetworks"),n.total&&n.total.label&&n.total.amount||t.push("total"),console.error("[ApplePayService] Payment request is invalid. Missing/invalid:",t),new Error("Invalid payment request provided")}return this.currentPaymentRequest=n,new Promise(((t,s)=>{try{if("undefined"==typeof window||!("ApplePaySession"in window))return console.error("[ApplePayService] ApplePaySession not available on window"),s({success:!1,error:{code:W.UNAVAILABLE,message:"ApplePaySession API is not available in this environment"}});this.currentSession=new window.ApplePaySession(3,n),this.setupSessionEventHandlers(t,s,e,i),this.currentSession.begin()}catch(t){console.error("[ApplePayService] Exception while starting session:",t),s({success:!1,error:{code:W.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,n){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,n);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:W.MERCHANT_VALIDATION_ERROR,message:t instanceof Error?t.message:"Merchant validation failed"}})}},this.currentSession.onpaymentauthorized=async s=>{try{const o=s.payment,a=Object.assign(Object.assign({},o.token),{product_details:{name:this.currentPaymentRequest.total.label,price:r.parseAmount(this.currentPaymentRequest.total.amount),description:this.currentPaymentRequest.total.label}}),l=await this.processPayment(i,n,a);l.success?(this.currentSession.completePayment({status:c.STATUS_SUCCESS}),t({success:!0,token:o.token,paymentMethodId:l.data.id})):(console.error("PSP reported payment failure:",l.data),this.currentSession.completePayment({status:c.STATUS_FAILURE}),e({success:!1,error:{code:W.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:c.STATUS_FAILURE}),e({success:!1,error:{code:W.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:c.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:W.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:W.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",n="USD"){return{countryCode:i,currencyCode:n,merchantCapabilities:r.getDefaultMerchantCapabilities(),supportedNetworks:r.getDefaultSupportedNetworks(),total:r.createLineItem(e,t)}}getApplePayConfig(){return this.applePayConfig}}const X=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(A,{height:"44px",width:"100%",styles:{borderRadius:"8px"}})))):null},K=e=>t("div",{class:"apple-pay-button-container"},t("button",Object.assign({class:(()=>{let t="apple-pay-button";switch(e.buttonStyle){case h.WHITE:t+=" apple-pay-button-white";break;case h.WHITE_OUTLINE:t+=" apple-pay-button-white-outline";break;default:t+=" apple-pay-button-black"}switch(e.buttonType){case d.BUY:t+=" apple-pay-button-type-buy";break;case d.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 ")),$=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=d.PLAIN,this.buttonStyle=h.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:p.paymentCurrency,merchantCapabilities:[u.SUPPORTS_3DS,u.SUPPORTS_CREDIT,u.SUPPORTS_DEBIT],supportedNetworks:r.getDefaultSupportedNetworks(),total:r.createLineItem(p.paymentDescription,p.paymentAmount)},n=await this.applePayService.startPaymentSession(i,p.authToken,p.accountId);n.success?this.applePayCompleted.emit({success:!0,token:n.token,paymentMethodId:n.paymentMethodId}):(this.applePayCompleted.emit({success:!1,error:n.error}),this.applePayError.emit({error:(null===(t=n.error)||void 0===t?void 0:t.message)||"Payment failed",code:(null===(e=n.error)||void 0===e?void 0:e.code)||$.ErrorCode.PAYMENT_FAILED}))}catch(t){const e=t instanceof Error?t.message:"Payment failed";this.error=e,this.applePayError.emit({error:e,code:$.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(p.paymentAmount)&&Boolean(p.paymentCurrency)&&Boolean(p.authToken)))return this.error="Missing required Apple Pay configuration",this.isConfigValid=!1,console.error("Apple Pay config error: missing required values",{paymentAmount:p.paymentAmount,paymentCurrency:p.paymentCurrency,hasAuthToken:Boolean(p.authToken),accountId:p.accountId}),this.applePayError.emit({error:this.error,code:$.ErrorCode.CONFIG_ERROR}),void(this.isLoading=!1);if(this.isAvailable=r.isApplePaySupported(),this.canMakePayments=r.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:$.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:$.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 J,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:$.ErrorCode.INITIALIZATION_ERROR})}finally{this.isLoading=!1}}async isSupported(){return this.isAvailable&&this.canMakePayments}async getPaymentMethods(){return this.isAvailable?r.getDefaultSupportedNetworks():[]}async abort(){this.applePayService.abortPaymentSession(),this.isProcessing=!1,this.applePayCancelled.emit()}render(){if(!p.applePayEnabled)return null;const e=!this.isLoading&&this.isAvailable&&this.canMakePayments&&this.isConfigValid;return t(j,null,p.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(X,{isLoading:this.isLoading}),e&&t(K,{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 "))}};$.ErrorCode={CONFIG_ERROR:"CONFIG_ERROR",NOT_SUPPORTED:"NOT_SUPPORTED",NOT_AVAILABLE:"NOT_AVAILABLE",INITIALIZATION_ERROR:"INITIALIZATION_ERROR",PAYMENT_FAILED:"PAYMENT_FAILED"};const tt=class{constructor(t){e(this,t)}render(){return t(j,{key:"38b0a855a7ad68b4c979d045a41efa20937cf476"},t("section",{key:"bbe4a0d26a95b0abd108370070fb861311724df8"},t("div",{key:"f322ecda85700c1e232b3f620b672f4eef103e97"},t("div",{key:"e59c6b19e0f27f7ab99380ead3f734a7e45cc1f1",part:T},null==p?void 0:p.paymentDescription),t("div",{key:"2fae7125889051d87571d9fb7c42ad3646e3ce07"},t("span",{key:"757941148dccea14941f6216f90af8721fbe6cb9",part:T},"Total")," ",t("span",{key:"ee50f026f64df4f73e0f6b087470a2154f4d0b4b",part:T},I(+(null==p?void 0:p.totalAmount)))))))}};class et{constructor(){this.api=o()}initialize(t){if(this.googlePayConfig=new y(t),!this.googlePayConfig.isValid)throw new Error("Invalid Google Pay configuration provided");if(this.googlePayClient=g.createGooglePayClient(this.googlePayConfig.environment),!this.googlePayClient)throw new Error("Failed to create Google Pay client")}async processPayment(t,e,i){try{const n=await this.api.post({endpoint:"google_pay/process_token",authToken:t,body:i,headers:{"sub-account":e}});return{success:n.id&&!!n.data.token,data:n}}catch(t){throw new Error("Google Pay payment processing failed")}}isAvailable(){return g.isGooglePaySupported()&&!!this.googlePayClient}async canMakePayments(){if(!this.googlePayClient||!this.googlePayConfig)return!1;try{const t=g.createBasePaymentDataRequest();return(await this.googlePayClient.isReadyToPay(t)).result}catch(t){return!1}}async startPaymentSession(t,e,i){var n;if(!this.googlePayConfig||!this.googlePayClient)throw new Error("Google Pay not initialized. Call initialize() first.");if(!this.isAvailable())throw new Error("Google Pay is not available on this device/browser");const s=new b(t);if(!s.isValid)throw new Error("Invalid payment data request provided");try{const t=await this.googlePayClient.loadPaymentData(s),o=null===(n=null==t?void 0:t.paymentMethodData)||void 0===n?void 0:n.tokenizationData,a=(()=>{if((null==o?void 0:o.token)&&"string"==typeof o.token)try{return JSON.parse(o.token)}catch(t){return o}return o})(),r={protocolVersion:null==a?void 0:a.protocolVersion,signature:null==a?void 0:a.signature,intermediateSigningKey:(null==a?void 0:a.intermediateSigningKey)?{signedKey:a.intermediateSigningKey.signedKey,signatures:a.intermediateSigningKey.signatures}:void 0,signedMessage:null==a?void 0:a.signedMessage},l=await this.processPayment(e,i,r);return l.success?{success:!0,paymentData:t,paymentMethodId:l.data.id}:{success:!1,error:{code:"PAYMENT_PROCESSING_ERROR",message:"Payment processing failed"}}}catch(t){if(t&&"object"==typeof t&&"statusCode"in t){const e=t;switch(e.statusCode){case"CANCELED":return{success:!1,error:{code:"USER_CANCELLED",message:"User cancelled the Google Pay session"}};case"DEVELOPER_ERROR":return{success:!1,error:{code:"DEVELOPER_ERROR",message:"Google Pay configuration error"}};default:return{success:!1,error:{code:"PAYMENT_ERROR",message:e.statusMessage||"Google Pay payment failed"}}}}return{success:!1,error:{code:"PAYMENT_ERROR",message:t instanceof Error?t.message:"Google Pay payment failed"}}}}createButton(t){if(!this.googlePayClient||!this.googlePayConfig)return null;try{return this.googlePayClient.createButton({onClick:t.onClick,buttonType:t.buttonType,buttonSizeMode:t.buttonSizeMode,buttonColor:t.buttonColor,buttonLocale:t.buttonLocale})}catch(t){return null}}prefetchPaymentData(t){if(!this.googlePayClient)return;const e=new b(t);if(e.isValid)try{this.googlePayClient.prefetchPaymentData(e)}catch(t){}}static createPaymentDataRequest(t,e,i="US",n="USD",s,o){return{apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[g.createPaymentMethodData()],transactionInfo:{countryCode:i,currencyCode:n,totalPriceStatus:"FINAL",totalPrice:g.formatAmount(t),totalPriceLabel:e},merchantInfo:{merchantName:s,merchantId:o}}}getGooglePayConfig(){return this.googlePayConfig}getGooglePayClient(){return this.googlePayClient}}const it=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(A,{height:"44px",width:"100%",styles:{borderRadius:"8px"}})))):null},nt=e=>t("div",{class:"google-pay-button-container"},t("button",Object.assign({class:(()=>{let t="google-pay-button";switch(t+=e.buttonStyle===m.WHITE?" google-pay-button-white":" google-pay-button-black",e.buttonType){case v.BUY:t+=" google-pay-button-type-buy";break;case v.BOOK:t+=" google-pay-button-type-book";break;case v.CHECKOUT:t+=" google-pay-button-type-checkout";break;case v.DONATE:t+=" google-pay-button-type-donate";break;case v.ORDER:t+=" google-pay-button-type-order";break;case v.PAY:t+=" google-pay-button-type-pay";break;case v.SUBSCRIBE:t+=" google-pay-button-type-subscribe";break;default:t+=" google-pay-button-type-plain"}return t+=e.buttonSizeMode===f.FILL?" google-pay-button-fill":" google-pay-button-static",(e.disabled||e.isProcessing||!e.isAvailable)&&(t+=" disabled"),t})(),style:(()=>{const t={};return e.buttonSizeMode===f.FILL?(t.width="100%",t.minWidth="200px"):t.width=e.width||"200px",t.height=e.height||"48px",t})(),onClick:()=>{!e.disabled&&!e.isProcessing&&e.isAvailable&&e.clickHandler&&e.clickHandler()},disabled:e.disabled||e.isProcessing||!e.isAvailable,"aria-label":"Google Pay",type:"button"},e),e.isProcessing&&t("div",{class:"processing-overlay"},t("div",{class:"spinner"}),t("span",null,"Processing...")),t("div",{class:"google-pay-button-content"},t("svg",{width:"41",height:"17",xmlns:"http://www.w3.org/2000/svg"},t("g",{fill:"none","fill-rule":"evenodd"},t("path",{d:"M19.526 2.635v4.083h2.518c.6 0 1.096-.202 1.488-.605.403-.402.605-.882.605-1.437 0-.544-.202-1.018-.605-1.422-.392-.413-.888-.62-1.488-.62h-2.518zm0 5.52v4.736h-1.504V1.198h3.99c1.013 0 1.873.337 2.582 1.012.72.675 1.08 1.497 1.08 2.466 0 .991-.36 1.819-1.08 2.482-.697.665-1.559.996-2.583.996h-2.485v.001zm7.668 2.287c0 .392.166.718.499.98.332.26.722.391 1.168.391.633 0 1.196-.234 1.692-.701.497-.469.744-1.019.744-1.65-.469-.37-1.123-.555-1.962-.555-.61 0-1.12.148-1.528.442-.409.294-.613.657-.613 1.093m1.946-5.815c1.112 0 1.989.297 2.633.89.642.594.964 1.408.964 2.442v4.932h-1.439v-1.11h-.065c-.622.914-1.45 1.372-2.486 1.372-.882 0-1.621-.262-2.215-.784-.594-.523-.891-1.176-.891-1.96 0-.828.313-1.486.94-1.976s1.463-.735 2.51-.735c.892 0 1.629.163 2.206.49v-.344c0-.522-.207-.966-.621-1.33a2.132 2.132 0 0 0-1.455-.547c-.84 0-1.504.353-1.995 1.062l-1.324-.834c.73-1.045 1.81-1.568 3.238-1.568m11.853.262l-5.02 11.53H34.42l1.864-4.034-3.302-7.496h1.635l2.387 5.749h.032l2.322-5.75z",fill:"#FFF"}),t("path",{d:"M13.448 7.134c0-.473-.04-.93-.116-1.366H6.988v2.588h3.634a3.11 3.11 0 0 1-1.344 2.042v1.68h2.169c1.27-1.17 2.001-2.9 2.001-4.944",fill:"#4285F4"}),t("path",{d:"M6.988 13.7c1.816 0 3.344-.595 4.459-1.621l-2.169-1.681c-.603.406-1.38.643-2.29.643-1.754 0-3.244-1.182-3.776-2.774H.978v1.731a6.728 6.728 0 0 0 6.01 3.703",fill:"#34A853"}),t("path",{d:"M3.212 8.267a4.034 4.034 0 0 1 0-2.572V3.964H.978A6.678 6.678 0 0 0 .261 6.98c0 1.085.26 2.11.717 3.017l2.234-1.731z",fill:"#FABB05"}),t("path",{d:"M6.988 2.921c.992 0 1.88.34 2.58 1.008v.001l1.92-1.918C10.324.928 8.804.262 6.989.262a6.728 6.728 0 0 0-6.01 3.702l2.234 1.731c.532-1.592 2.022-2.774 3.776-2.774",fill:"#E94235"}))))),t("style",null,"\n .google-pay-button-container {\n display: block;\n position: relative;\n }\n\n .google-pay-button {\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 14px;\n font-weight: 500;\n letter-spacing: 0.25px;\n line-height: 16px;\n outline: none;\n padding: 0 20px;\n position: relative;\n min-width: 140px;\n min-height: 48px;\n }\n\n /* Button styles */\n .google-pay-button.google-pay-button-black {\n background-color: #000;\n color: #fff;\n }\n\n .google-pay-button.google-pay-button-white {\n background-color: #fff;\n color: #3c4043;\n }\n\n /* Button content */\n .google-pay-button-content {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n white-space: nowrap;\n }\n\n .google-g-logo {\n width: 20px;\n height: 20px;\n flex-shrink: 0;\n }\n\n .pay-text {\n font-family: 'Google Sans', arial, sans-serif;\n font-size: 14px;\n font-weight: 500;\n margin-left: 8px;\n }\n\n /* Button types - text content handled by ::before pseudo-element */\n .google-pay-button-type-buy .google-pay-button-content::before {\n content: 'Buy with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-book .google-pay-button-content::before {\n content: 'Book with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-checkout .google-pay-button-content::before {\n content: 'Checkout with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-donate .google-pay-button-content::before {\n content: 'Donate with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-order .google-pay-button-content::before {\n content: 'Order with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-pay .google-pay-button-content::before {\n content: 'Pay with';\n margin-right: 8px;\n }\n\n .google-pay-button-type-subscribe .google-pay-button-content::before {\n content: 'Subscribe with';\n margin-right: 8px;\n }\n\n /* Size modes */\n .google-pay-button.google-pay-button-fill {\n width: 100%;\n min-width: 200px;\n }\n\n .google-pay-button.google-pay-button-static {\n width: auto;\n }\n\n /* Hover and focus states */\n .google-pay-button:hover:not(.disabled) {\n box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.15), 0 1px 3px 1px rgba(0, 0, 0, 0.30);\n }\n\n .google-pay-button:focus:not(.disabled) {\n box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.15), 0 1px 3px 1px rgba(0, 0, 0, 0.30);\n }\n\n .google-pay-button:active:not(.disabled) {\n box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.15), 0 1px 3px 1px rgba(0, 0, 0, 0.30);\n transform: translateY(1px);\n }\n\n /* Disabled state */\n .google-pay-button.disabled {\n opacity: 0.5;\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .google-pay-button.disabled:hover,\n .google-pay-button.disabled:focus,\n .google-pay-button.disabled:active {\n box-shadow: none;\n transform: none;\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: 4px;\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 .google-pay-button {\n width: 100% !important;\n min-width: 200px;\n }\n }\n ")),st=class{constructor(t){e(this,t),this.googlePayCancelled=i(this,"googlePayCancelled"),this.googlePayCompleted=i(this,"googlePayCompleted"),this.googlePayStarted=i(this,"googlePayStarted"),this.unsubscribes=[],this.canMakePayments=!1,this.error=null,this.isAvailable=!1,this.isLoading=!0,this.isProcessing=!1,this.buttonSizeMode=f.FILL,this.buttonStyle=m.BLACK,this.buttonType=v.PLAIN,this.countryCode="US",this.disabled=!1,this.environment=M.PRODUCTION,this.merchantId="gateway:justifi",this.merchantName="justifi",this.showSkeleton=!0,this.handleGooglePayClick=async()=>{var t;if(!this.isProcessing&&!this.disabled&&this.isAvailable&&this.canMakePayments)try{this.isProcessing=!0,this.error=null,this.googlePayStarted.emit();const e=this.createPaymentDataRequest(),i=await this.googlePayService.startPaymentSession(e,p.authToken,p.accountId);i.success?this.googlePayCompleted.emit({success:!0,paymentData:i.paymentData,paymentMethodId:i.paymentMethodId}):(this.googlePayCompleted.emit({success:!1,error:i.error}),"USER_CANCELLED"===(null===(t=i.error)||void 0===t?void 0:t.code)&&this.googlePayCancelled.emit())}catch(t){const e=t instanceof Error?t.message:"Payment failed";this.error=e,this.googlePayCompleted.emit({success:!1,error:e})}finally{this.isProcessing=!1}}}watchConfigChange(){this.initializeGooglePay()}componentWillLoad(){this.googlePayService=new et}componentDidLoad(){const t=w("paymentAmount",(()=>{this.prefetchPaymentData()}));"function"==typeof t&&this.unsubscribes.push(t);const e=w("paymentCurrency",(()=>{this.prefetchPaymentData()}));"function"==typeof e&&this.unsubscribes.push(e);const i=w("paymentDescription",(()=>{this.prefetchPaymentData()}));"function"==typeof i&&this.unsubscribes.push(i)}disconnectedCallback(){this.unsubscribes.forEach((t=>{try{t()}catch(t){}})),this.unsubscribes=[]}async getSupportedAuthMethods(){return this.isAvailable?g.getDefaultAuthMethods():[]}async getSupportedNetworks(){return this.isAvailable?g.getDefaultSupportedNetworks():[]}async handleSelectionClick(){p.selectedPaymentMethod={type:C.GOOGLE_PAY}}async isSupported(){return this.isAvailable&&this.canMakePayments}async prefetchPaymentData(){if(!this.isAvailable||!this.canMakePayments)return;const t=this.createPaymentDataRequest();this.googlePayService.prefetchPaymentData(t)}async initializeGooglePay(){try{if(this.isLoading=!0,this.error=null,!p.paymentAmount)return this.error="Missing required Google Pay configuration",void(this.isLoading=!1);if(this.googlePayService.initialize({environment:this.environment,merchantId:this.merchantId,merchantName:this.merchantName,buttonType:this.buttonType,buttonStyle:this.buttonStyle,buttonSizeMode:this.buttonSizeMode}),this.isAvailable=this.googlePayService.isAvailable(),!this.isAvailable)return this.error="Google Pay is not supported on this device",void(this.isLoading=!1);if(this.canMakePayments=await this.googlePayService.canMakePayments(),!this.canMakePayments)return this.error="Google Pay is not available for payments",void(this.isLoading=!1);const t=this.createPaymentDataRequest();this.googlePayService.prefetchPaymentData(t)}catch(t){this.error=t instanceof Error?t.message:"Failed to initialize Google Pay"}finally{this.isLoading=!1}}createPaymentDataRequest(){return et.createPaymentDataRequest(p.paymentAmount,p.paymentDescription,this.countryCode,p.paymentCurrency,this.merchantName,this.merchantId)}render(){const e=!this.isLoading&&!!this.error,i=!this.isLoading&&!this.error&&!this.isAvailable,n=!this.isLoading&&!this.error&&this.isAvailable&&!this.canMakePayments,s=!this.isLoading&&!this.error&&this.isAvailable&&this.canMakePayments;return t(j,{key:"ee9d21e776e2a5c48d3fa2fb505290020707897d"},p.checkoutLoaded&&t("script",{key:"72bd5be9e6b80a42e219082cb248927aa6e1154b",async:!0,src:"https://pay.google.com/gp/p/js/pay.js",onLoad:()=>{this.initializeGooglePay()}}),t("div",{key:"f0c2c019b80589e69c159e78b18e37fc5b1f5b21",class:"google-pay-container"},t(it,{key:"d2b1f727aec121ce5e71afcd4306df92a4b5dd3b",isLoading:this.isLoading}),e&&t("div",{key:"257df18492bff1609b864b69e2fffbacfc751ead",class:"google-pay-error",role:"alert","data-testid":"gp-error"},t("span",{key:"f0ece1f1ceeb2fd957ab577f848741a377c7375d",class:"error-icon"},"⚠️"),t("span",{key:"9139e3824de300b51b2f577fbfa77ab200b0afa5",class:"error-message"},this.error)),i&&t("div",{key:"f1bf0002a82aec202b168130729c16caeb254119",class:"google-pay-unavailable","data-testid":"gp-device-unavailable"},t("span",{key:"de42cef5e7fd8df4f84c6b2d9429672b97e9e805",class:"unavailable-message"},"Google Pay is not available on this device")),n&&t("div",{key:"a4738f6c36240efee000560acc775e431b517588",class:"google-pay-unavailable","data-testid":"gp-payments-unavailable"},t("span",{key:"6987a5208a702c15081660b09bfc10360eeef922",class:"unavailable-message"},"Google Pay is not available for payments")),s&&t(nt,{key:"de09f6693db4dc60ba6529e683dc213bec8492a5","data-testid":"gp-button",buttonType:this.buttonType,buttonStyle:this.buttonStyle,buttonSizeMode:this.buttonSizeMode,disabled:this.disabled,isProcessing:this.isProcessing,isAvailable:this.isAvailable,clickHandler:this.handleGooglePayClick})),t("style",{key:"ed3249a9b1f55720f6f4f29b3923ae2c6eda3431"},"\n .google-pay-container {\n width: 100%;\n }\n\n .google-pay-error {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px;\n background: #fef2f2;\n border: 1px solid #fecaca;\n border-radius: 8px;\n color: #dc2626;\n font-size: 14px;\n }\n\n .google-pay-unavailable {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 12px;\n background: #f9fafb;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n color: #6b7280;\n font-size: 14px;\n }\n\n .error-icon {\n font-size: 16px;\n }\n \n "))}static get watchers(){return{merchantId:["watchConfigChange"],environment:["watchConfigChange"]}}},ot=class{constructor(t){e(this,t),this.levels={h1:L,h2:O,h3:B},this.level="h1"}render(){return t(j,{key:"e448c85b2268df923662a0ff71bf4d178dcfc910"},t(this.levels[this.level],{key:"c76766a1ab006ea4b5eb7e0ad8a6b294d52283a0",text:this.text,class:this.class}))}},at=o();class rt{async getLinkToken(t,e,i,n){return at.post({endpoint:`plaid/${e}/link`,body:{checkout_id:i},authToken:t,signal:n})}async tokenizeBankAccount(t,e,i,n,s,o){const a=`plaid/${e}/tokenize`,r={public_token:i};return n&&(r.link_token_id=n),s&&(r.payment_method_group_id=s),at.post({endpoint:a,body:r,authToken:t,signal:o})}}const lt=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 rt,this.handleGooglePayCompleted=t=>{const{success:e,paymentMethodId:i,error:n}=t.detail||{};e&&i?(p.paymentToken=i,p.selectedPaymentMethod={type:C.GOOGLE_PAY},this.submitCheckout()):this.errorEvent.emit({message:n&&n.message||"Google Pay payment failed",errorCode:F.TOKENIZE_ERROR,severity:Y.ERROR})},this.handleGooglePayCancelled=()=>{p.paymentToken=void 0,p.selectedPaymentMethod=void 0},this.handleApplePayCompleted=t=>{const{success:e,token:i,paymentMethodId:n,error:s}=t.detail;e&&i?(p.paymentToken=n,p.selectedPaymentMethod={type:C.APPLE_PAY},this.submitCheckout()):(console.error("Apple Pay completed but failed:",s),this.errorEvent.emit({message:(null==s?void 0:s.message)||"Apple Pay payment failed",errorCode:F.TOKENIZE_ERROR,severity:Y.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:Y.ERROR})},this.handleApplePayCancelled=()=>{p.paymentToken=void 0,p.selectedPaymentMethod=void 0}}connectedCallback(){this.observer=new MutationObserver((()=>{this.queryFormRefs(),this.setupApplePayListeners(),this.setupGooglePayListeners()})),this.observer.observe(this.hostEl,{childList:!0,subtree:!0}),p.checkoutId=this.checkoutId;const t={authToken:this.authToken,checkoutId:this.checkoutId,service:new q};this.getCheckout=(({authToken:t,checkoutId:e,service:i})=>async({onSuccess:n,onError:s})=>{var o;try{const a=await i.fetchCheckout(t,e);if(a.error)return s({error:H(a.error),code:V(null===(o=a.error)||void 0===o?void 0:o.code),severity:Y.ERROR});n({checkout:a.data})}catch(t){const e=V(null==t?void 0:t.code);return s({error:t.message||t,code:e,severity:Y.ERROR})}})(t),this.completeCheckout=(({authToken:t,checkoutId:e,service:i})=>async({payment:n,onSuccess:s,onError:o})=>{var a;try{const r=await i.complete(t,e,n);if(r.error)return o({error:H(r.error),code:V(null===(a=r.error)||void 0===a?void 0:a.code),severity:Y.ERROR});s({checkout:r.data})}catch(t){const e=V(null==t?void 0:t.code);return o({error:t.message||t,code:e,severity:Y.ERROR})}})(t),k((()=>{this.emitCheckoutChanged()}))}componentWillLoad(){this.analytics=new U(this),G(),p.authToken=this.authToken,this.fetchCheckout(),z("set",(t=>{const e=_[t];void 0!==e&&R(t,e)&&this.fetchCheckout()}))}componentDidLoad(){this.queryFormRefs(),this.setupApplePayListeners(),this.setupGooglePayListeners()}disconnectedCallback(){var t;null===(t=this.observer)||void 0===t||t.disconnect(),this.removeApplePayListeners(),this.removeGooglePayListeners()}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:Q.CHECKOUT_EXPIRED,errorCode:F.CHECKOUT_EXPIRED,severity:Y.ERROR}):this.errorEvent.emit({message:Q.CHECKOUT_ALREADY_COMPLETED,errorCode:F.CHECKOUT_ALREADY_COMPLETED,severity:Y.ERROR})},onError:t=>{this.errorEvent.emit({message:t.message,errorCode:t.code,severity:t.severity})}}):this.errorEvent.emit({message:Q.NOT_AUTHENTICATED,errorCode:F.NOT_AUTHENTICATED,severity:Y.ERROR})}updateStore(t){var e,i,n,s,o,a,r;p.accountId=t.account_id,p.checkoutLoaded=!0,p.paymentMethods=t.payment_methods.map((t=>new D(t))),p.paymentMethodGroupId=t.payment_method_group_id,p.paymentDescription=t.payment_description,p.totalAmount=t.total_amount,p.paymentAmount=t.payment_amount,p.bnplEnabled=t.payment_settings.bnpl_payments,p.insuranceEnabled=t.payment_settings.insurance_payments,p.bankAccountVerification=null===(e=t.payment_settings)||void 0===e?void 0:e.bank_account_verification,p.applePayEnabled=null===(i=t.payment_settings)||void 0===i?void 0:i.apple_payments,p.googlePayEnabled=null===(n=t.payment_settings)||void 0===n?void 0:n.google_payments,p.bnplProviderClientId=null===(s=null==t?void 0:t.bnpl)||void 0===s?void 0:s.provider_client_id,p.bnplProviderMode=null===(o=null==t?void 0:t.bnpl)||void 0===o?void 0:o.provider_mode,p.bnplProviderApiVersion=null===(a=null==t?void 0:t.bnpl)||void 0===a?void 0:a.provider_api_version,p.bnplProviderCheckoutUrl=null===(r=null==t?void 0:t.bnpl)||void 0===r?void 0:r.provider_checkout_url}emitCheckoutChanged(){const t={availablePaymentMethodTypes:x(),selectedPaymentMethod:p.selectedPaymentMethod,savedPaymentMethods:p.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.googlePayRef=this.hostEl.querySelector("justifi-google-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))}setupGooglePayListeners(){this.googlePayRef&&(this.googlePayRef.addEventListener("googlePayCompleted",this.handleGooglePayCompleted),this.googlePayRef.addEventListener("googlePayCancelled",this.handleGooglePayCancelled))}removeGooglePayListeners(){this.googlePayRef&&(this.googlePayRef.removeEventListener("googlePayCompleted",this.handleGooglePayCompleted),this.googlePayRef.removeEventListener("googlePayCancelled",this.handleGooglePayCancelled))}async tokenizePaymentMethod(t){var e,i,n;const s=null!==(i=await(null===(e=this.billingFormRef)||void 0===e?void 0:e.getValues()))&&void 0!==i?i:{},o=Object.assign(Object.assign({},t),s),a=Object.assign({accountId:p.accountId,payment_method_group_id:void 0},o);p.savePaymentMethod&&(a.payment_method_group_id=p.paymentMethodGroupId);const r=await(null===(n=this.paymentMethodFormRef)||void 0===n?void 0:n.tokenize({clientId:this.authToken,paymentMethodMetadata:a,account:p.accountId}));return r.error?r:(p.paymentToken=r.id,r.id)}async setSelectedPaymentMethod(t){p.selectedPaymentMethod=t,p.paymentToken=t.id||void 0}async validate(){var t,e;const i=[];p.insuranceEnabled&&this.insuranceFormRef&&i.push(this.insuranceFormRef.validate());const n=(null===(t=p.selectedPaymentMethod)||void 0===t?void 0:t.type)===C.NEW_CARD,s=(null===(e=p.selectedPaymentMethod)||void 0===e?void 0:e.type)===C.NEW_BANK_ACCOUNT;if((n||s)&&(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:F.VALIDATION_ERROR,severity:Y.ERROR}),!1)}catch(t){return!1}}async submitCheckout(t){var e,i,n,s,o;const a=await this.validate();if(!p.selectedPaymentMethod)return void this.errorEvent.emit({message:"No payment method selected.",errorCode:F.VALIDATION_ERROR,severity:Y.ERROR});const r=(null===(e=p.selectedPaymentMethod)||void 0===e?void 0:e.type)===C.NEW_CARD,l=(null===(i=p.selectedPaymentMethod)||void 0===i?void 0:i.type)===C.NEW_BANK_ACCOUNT,c=(null===(n=p.selectedPaymentMethod)||void 0===n?void 0:n.type)===C.PLAID;if(r||l){const e=await this.tokenizePaymentMethod(t);if(null==e?void 0:e.error)return void this.errorEvent.emit({message:e.error.message,errorCode:F.TOKENIZE_ERROR,severity:Y.ERROR})}if(c&&!p.paymentToken){const t=p.plaidPublicToken,e=p.plaidLinkTokenId;if(!t)return void this.errorEvent.emit({message:"Missing Plaid public token. Please connect your bank.",errorCode:F.TOKENIZE_ERROR,severity:Y.ERROR});try{const i=await this.plaidService.tokenizeBankAccount(p.authToken,p.accountId,t,e||void 0,p.savePaymentMethod?p.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:F.TOKENIZE_ERROR,severity:Y.ERROR});const n=null==i?void 0:i.data,o=(null===(s=null==n?void 0:n.bank_account)||void 0===s?void 0:s.token)||(null==n?void 0:n.token)||(null==n?void 0:n.id);p.paymentToken=o}catch(t){return void this.errorEvent.emit({message:(null==t?void 0:t.message)||"Plaid exchange error",errorCode:F.TOKENIZE_ERROR,severity:Y.ERROR})}}if(!a)return void this.errorEvent.emit({message:"Please fill in all required fields.",errorCode:F.VALIDATION_ERROR,severity:Y.ERROR});if(!p.paymentToken)return void this.errorEvent.emit({message:"Payment token not found.",errorCode:F.TOKENIZE_ERROR,severity:Y.ERROR});let h;if(h={payment_mode:(t=>{switch(t){case C.NEW_CARD:case C.SAVED_CARD:case C.NEW_BANK_ACCOUNT:case C.SAVED_BANK_ACCOUNT:case C.PLAID:return S.ECOM;case C.SEZZLE:return S.BNPL;case C.APPLE_PAY:return S.APPLE_PAY;case C.GOOGLE_PAY:return S.GOOGLE_PAY;default:return}})(null===(o=p.selectedPaymentMethod)||void 0===o?void 0:o.type),payment_token:p.paymentToken},this.preCompleteHook){const t=E();try{await new Promise(((e,i)=>{this.preCompleteHook(t,(()=>e()),(()=>i()))}))}catch(t){return}}this.completeCheckout({payment:h,onSuccess:({checkout:t})=>{this.submitEvent.emit({checkout:t,message:"Checkout completed successfully"})},onError:t=>{this.errorEvent.emit({message:t.message,errorCode:F.COMPLETE_CHECKOUT_ERROR,severity:Y.ERROR})}})}render(){return t(n,{key:"e771926ee79c47b09145bd44b47cbba3c21be3eb"})}get hostEl(){return s(this)}};var ct;!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"}(ct||(ct={}));const ht={[ct.PLAID_SDK_LOAD_FAILED]:"Unable to load Plaid. Please refresh the page and try again.",[ct.PLAID_LINK_INIT_FAILED]:"Unable to initialize bank connection. Please try again.",[ct.PLAID_LINK_TOKEN_FAILED]:"Unable to connect to bank service. Please try again.",[ct.PLAID_AUTHENTICATION_FAILED]:"Bank authentication failed. Please try again.",[ct.PLAID_BANK_NOT_SUPPORTED]:"Your bank is not currently supported. Please try a different payment method.",[ct.PLAID_TOKEN_EXPIRED]:"Your bank session has expired. Please reconnect your account.",[ct.PLAID_NETWORK_ERROR]:"Network connection issue. Please check your internet connection and try again.",[ct.PLAID_USER_CANCELLED]:"Bank connection was cancelled. Click to try again.",[ct.PLAID_TIMEOUT]:"Bank connection timed out. Please try again.",[ct.PLAID_INVALID_CREDENTIALS]:"Invalid bank credentials. Please check your username and password.",[ct.PLAID_ACCOUNT_LOCKED]:"Your bank account is temporarily locked. Please contact your bank.",[ct.PLAID_MAINTENANCE]:"Bank service is temporarily unavailable. Please try again later.",[ct.PLAID_RATE_LIMITED]:"Too many connection attempts. Please wait a moment and try again."},dt={[ct.PLAID_SDK_LOAD_FAILED]:Y.ERROR,[ct.PLAID_LINK_INIT_FAILED]:Y.ERROR,[ct.PLAID_LINK_TOKEN_FAILED]:Y.ERROR,[ct.PLAID_AUTHENTICATION_FAILED]:Y.ERROR,[ct.PLAID_BANK_NOT_SUPPORTED]:Y.WARNING,[ct.PLAID_TOKEN_EXPIRED]:Y.WARNING,[ct.PLAID_NETWORK_ERROR]:Y.WARNING,[ct.PLAID_USER_CANCELLED]:Y.INFO,[ct.PLAID_TIMEOUT]:Y.WARNING,[ct.PLAID_INVALID_CREDENTIALS]:Y.ERROR,[ct.PLAID_ACCOUNT_LOCKED]:Y.ERROR,[ct.PLAID_MAINTENANCE]:Y.WARNING,[ct.PLAID_RATE_LIMITED]:Y.WARNING},pt=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 rt,this.maxRetries=3,this.retryDelay=2e3,this.timeoutId=null,this.abortController=null,this.hasLoggedDisabledWarning=!1,this.waitForStoreAndInitialize=()=>{p.authToken&&p.accountId&&p.checkoutId?this.initializePlaidLink():setTimeout((()=>{this.waitForStoreAndInitialize()}),100)},this.initializePlaidLink=async()=>{try{if(void 0===window.Plaid)return void this.handleError({code:ct.PLAID_SDK_LOAD_FAILED,message:ht[ct.PLAID_SDK_LOAD_FAILED],severity:dt[ct.PLAID_SDK_LOAD_FAILED],retryable:!0,userAction:"Refresh the page and try again"});if(await this.getLinkToken(),!this.linkToken)return void this.handleError({code:ct.PLAID_LINK_TOKEN_FAILED,message:ht[ct.PLAID_LINK_TOKEN_FAILED],severity:dt[ct.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:ct.PLAID_LINK_INIT_FAILED,message:ht[ct.PLAID_LINK_INIT_FAILED],severity:dt[ct.PLAID_LINK_INIT_FAILED],originalError:t,retryable:!0,userAction:"Click to try again"})}},this.getLinkToken=async()=>{var t,e,i,n,s;try{if(!p.authToken||!p.accountId)return void this.handleError({code:ct.PLAID_LINK_TOKEN_FAILED,message:"Missing authentication. Please refresh the page and try again.",severity:Y.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(p.authToken,p.accountId,p.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&&(p.plaidLinkTokenId=this.linkTokenId)}catch(t){this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null);let o=ct.PLAID_LINK_TOKEN_FAILED,a=ht[o],r=!0;"AbortError"===t.name?(o=ct.PLAID_TIMEOUT,a=ht[o],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"))?(o=ct.PLAID_NETWORK_ERROR,a=ht[o],r=!0):((null===(n=t.message)||void 0===n?void 0:n.includes("401"))||(null===(s=t.message)||void 0===s?void 0:s.includes("unauthorized")))&&(o=ct.PLAID_INVALID_CREDENTIALS,a="Authentication failed. Please refresh the page and try again.",r=!1),this.handleError({code:o,message:a,severity:dt[o],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 ct.PLAID_RATE_LIMITED;if(t.includes("maintenance"))return ct.PLAID_MAINTENANCE;if(t.includes("not_authenticated"))return ct.PLAID_INVALID_CREDENTIALS}if(null==t?void 0:t.code)switch(t.code){case"rate_limited":return ct.PLAID_RATE_LIMITED;case"maintenance":return ct.PLAID_MAINTENANCE;case"not_authenticated":return ct.PLAID_INVALID_CREDENTIALS;default:return ct.PLAID_LINK_TOKEN_FAILED}return ct.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,p.selectedPaymentMethod={type:C.PLAID}),this.plaidErrorRecovered.emit({code:"plaid-success",message:"Bank account connected successfully",severity:Y.INFO}),p.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=ct.PLAID_AUTHENTICATION_FAILED,i=ht[e],n=!0,s="Click to try again";if(t.error_code)switch(t.error_code){case"INVALID_CREDENTIALS":e=ct.PLAID_INVALID_CREDENTIALS,i=ht[e],n=!0;break;case"ITEM_LOGIN_REQUIRED":e=ct.PLAID_INVALID_CREDENTIALS,i="Your bank requires re-authentication. Please try again.",n=!0;break;case"ITEM_LOCKED":e=ct.PLAID_ACCOUNT_LOCKED,i=ht[e],n=!1,s="Contact your bank";break;case"INSTITUTION_NOT_RESPONDING":e=ct.PLAID_MAINTENANCE,i=ht[e],n=!0;break;case"RATE_LIMIT_EXCEEDED":e=ct.PLAID_RATE_LIMITED,i=ht[e],n=!0;break;case"INVALID_REQUEST":e=ct.PLAID_AUTHENTICATION_FAILED,i="Invalid request. Please try again.",n=!0;break;case"PLAID_ERROR":e=ct.PLAID_AUTHENTICATION_FAILED,i=t.error_message||"Bank authentication failed. Please try again.",n=!0;break;default:t.error_message&&(i=t.error_message)}if(t.error_message){const o=t.error_message.toLowerCase();o.includes("not supported")||o.includes("unsupported")?(e=ct.PLAID_BANK_NOT_SUPPORTED,i=ht[e],n=!1,s="Try a different payment method"):(o.includes("expired")||o.includes("timeout"))&&(e=ct.PLAID_TOKEN_EXPIRED,i=ht[e],n=!0)}this.handleError({code:e,message:i,severity:dt[e],originalError:t,retryable:n,userAction:s}),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=p.selectedPaymentMethod)||void 0===t?void 0:t.type)===C.PLAID;this.isSelected!==e&&(this.isSelected=e)}}onSelectionChange(t){var e;t&&(null===(e=p.selectedPaymentMethod)||void 0===e?void 0:e.type)!==C.PLAID&&(p.selectedPaymentMethod={type:C.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:ct.PLAID_SDK_LOAD_FAILED,message:ht[ct.PLAID_SDK_LOAD_FAILED],severity:dt[ct.PLAID_SDK_LOAD_FAILED],retryable:!0,userAction:"Refresh the page and try again"})})}componentWillLoad(){var t;this.isSelected=(null===(t=p.selectedPaymentMethod)||void 0===t?void 0:t.type)===C.PLAID}async resolvePaymentMethod(){return this.publicToken?{token:this.publicToken,data:{type:"bank_account",plaid_public_token:this.publicToken}}:{validationError:!0}}async getPaymentToken(){return p.paymentToken}async handleSelectionClick(){if(this.isSelected=!0,p.selectedPaymentMethod={type:C.PLAID},this.error)return this.clearError(),void this.waitForStoreAndInitialize();!this.plaidLink||this.publicToken||this.isAuthenticating||this.openPlaidLink()}async setSelected(t){this.isSelected=t,t&&(p.selectedPaymentMethod={type:C.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=w("selectedPaymentMethod",this.syncWithStore);this.unsubscribeFromStore=t}disconnectedCallback(){this.unsubscribeFromStore&&this.unsubscribeFromStore(),this.timeoutId&&clearTimeout(this.timeoutId),this.abortController&&this.abortController.abort()}render(){if(!0!==p.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(j,{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===Y.ERROR?"text-danger":this.error.severity===Y.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"]}}},ut=class{constructor(t){e(this,t),this.onPaymentMethodOptionClick=t=>e=>{e.preventDefault(),p.selectedPaymentMethod={id:t.id,type:t.type},p.paymentToken=t.id},this.isAllowedPaymentMethod=t=>!(t===C.SAVED_CARD&&p.disableCreditCard||t===C.SAVED_BANK_ACCOUNT&&p.disableBankAccount)}componentWillLoad(){p.paymentMethods.length||console.warn("No saved payment methods available."),p.disablePaymentMethodGroup&&console.warn("Payment method group is disabled.")}render(){return p.disablePaymentMethodGroup?null:t(j,null,t("div",{class:"saved-payment-methods"},p.paymentMethods.length?p.paymentMethods.filter((t=>this.isAllowedPaymentMethod(t.type))).map((e=>t("div",{class:"radio-list-item p-3",part:N,onClick:this.onPaymentMethodOptionClick(e)},t("form-control-radio",{name:"paymentMethodType",value:null==e?void 0:e.id,checked:p.paymentToken===(null==e?void 0:e.id),label:`${Z[null==e?void 0:e.brand]||""} *${null==e?void 0:e.acct_last_four}`})))):null))}},yt=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"}}),gt=class{constructor(t){e(this,t),this.paymentMethodOptionSelected=i(this,"paymentMethodOptionSelected"),this.paymentMethodOptionId=C.SEZZLE,this.initializeSezzleCheckout=()=>{let t;this.sezzlePromise=new Promise((e=>{t=e}));const e=Number(p.paymentAmount),i=new(0,window.Checkout)({mode:"popup",publicKey:p.bnplProviderClientId,apiMode:p.bnplProviderMode,apiVersion:p.bnplProviderApiVersion});i.sezzleButtonElement=this.sezzleButtonRef,i.init({onClick:function(t){t.preventDefault(),i.startCheckout({checkout_url:p.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(){p.selectedPaymentMethod={type:C.SEZZLE},this.paymentMethodOptionSelected.emit(this.paymentMethodOptionId)}render(){var e,i;return p.bnplEnabled?t(j,{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 ",yt),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"},I(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{$ as justifi_apple_pay,tt as justifi_checkout_summary,st as justifi_google_pay,ot as justifi_header,lt as justifi_modular_checkout,pt as justifi_plaid_payment_method,ut as justifi_saved_payment_methods,gt as justifi_sezzle_payment_method}
@@ -0,0 +1 @@
1
+ import{h as s,r as t,c as i}from"./p-DwYM91AU.js";import{A as e}from"./p-yyedWKWX.js";import{C as r,a as o}from"./p-Cjcsf8ku.js";import{c as a}from"./p-BrRsgB8S.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as n,a as c}from"./p-D2muobcE.js";import{c as l,J as h}from"./p-BEu9YFnf.js";import{p as d,f as p,r as u,j as v}from"./p-B09GVew-.js";import{v as m,i as f,a as y,H as j}from"./p-BhqSAzpT.js";import{G as g,H as _}from"./p-sA8HBfkI.js";import{S as k}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{S as w}from"./p-CsgUIrv8.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-DkoufM1t.js";import"./p-Dr8Z8wfP.js";import"./p-HXpYMWUU.js";const b=e();class T{async fetchQuote(s,t){return b.post({endpoint:"insurance/quotes",body:t,authToken:s})}async toggleCoverage(s,t,i){return b.post({endpoint:`insurance/quotes/${t}/toggle`,body:i,authToken:s})}}const C=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(w,{width:"35%",height:"30px"})),s("div",{class:"col-12"},s(w,{width:"70%"})),s("div",{class:"col-12"},s(w,{width:"40%"})),s("div",{class:"col-12"},s(w,{width:"40%"})),s("div",{class:"col-12"},s(w,{width:"100%"})),s("div",{class:"col-12"},s(w,{width:"80%"}))),H=class{constructor(s){t(this,s),this.insuranceUpdated=i(this,"insurance-updated"),this.errorEvent=i(this,"error-event"),this.isLoading=!0}async validate(){return m()}processHTMLContent(s){return d(s,[s=>u(s,"style"),s=>v(s,"a","part",g),s=>v(s,"p","part",g)])}componentWillLoad(){l(),this.analytics=new h(this),this.initializeServiceMethods(),this.getQuote&&this.fetchData()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeServiceMethods(){const s=this.authToken||a.authToken;if(!s)return void this.errorEvent.emit({errorCode:o.MISSING_PROPS,message:"Missing authToken",severity:r.ERROR});const t={authToken:s,service:new T};this.getQuote=(({authToken:s,service:t})=>async({payload:i,onSuccess:e,onError:o})=>{var a;try{const l=await t.fetchQuote(s,i);if(l.error)return o({error:c(l.error),code:n(null===(a=l.error)||void 0===a?void 0:a.code),severity:r.ERROR});e({quote:l.data})}catch(s){const t=n(null==s?void 0:s.code);return o({error:s.message||s,code:t,severity:r.ERROR})}})(t),this.toggleCoverage=(({authToken:s,service:t})=>async({quoteId:i,payload:e,onSuccess:o,onError:a})=>{var l;try{const h=await t.toggleCoverage(s,i,e);if(h.error)return a({error:c(h.error),code:n(null===(l=h.error)||void 0===l?void 0:l.code),severity:r.ERROR});o({quote:h.data})}catch(s){const t=n(null==s?void 0:s.code);return a({error:s.message||s,code:t,severity:r.ERROR})}})(t)}fetchData(){this.isLoading=!0,this.getQuote({payload:{checkout_id:this.checkoutId||a.checkoutId,policy_type:"season_interruption",primary_identity:{state:this.primaryIdentityState,email:this.primaryIdentityEmailAddress,first_name:this.primaryIdentityFirstName,last_name:this.primaryIdentityLastName,postal_code:this.primaryIdentityPostalCode,country:this.primaryIdentityCountry},policy_attributes:{insurable_amount:this.policyAttributesInsurableAmount,start_date:this.policyAttributesStartDate,end_date:this.policyAttributesEndDate,covered_identity:{first_name:this.coveredIdentityFirstName,last_name:this.coveredIdentityLastName}}},onSuccess:({quote:s})=>{this.quote=s,this.quote.product.description=this.processHTMLContent(this.quote.product.description),this.quote.product.legal_disclaimer=this.processHTMLContent(this.quote.product.legal_disclaimer),f[s.policy_type]=s.accepted,this.isLoading=!1},onError:({error:s,code:t,severity:i})=>{this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}onChangeHandler(s,t){this.accepted=t,y[this.quote.policy_type]=!1,this.toggleCoverage({quoteId:this.quote.id,payload:{accepted:this.accepted},onSuccess:()=>{this.insuranceUpdated.emit(),f[this.quote.policy_type]=this.accepted},onError:({error:s,code:t,severity:i})=>{this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}get error(){var s;return y[null===(s=this.quote)||void 0===s?void 0:s.policy_type]}render(){var t,i,e,r;return a&&!1===a.insuranceEnabled?(console.warn("[justifi-season-interruption-insurance] Insurance is disabled for this checkout (payment_settings.insurance_payments=false)."),null):s(k,null,this.isLoading?s(C,null):s("div",null,s(j,{text:null===(t=this.quote)||void 0===t?void 0:t.product.title,class:"fs-5 fw-bold pb-3"}),s("small",{part:g,innerHTML:null===(i=this.quote)||void 0===i?void 0:i.product.description}),s("form-control-radio",{label:`Accept coverage for ${p(null===(e=this.quote)||void 0===e?void 0:e.total_cents)}`,name:"opt-in",value:"true",checked:"true"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("form-control-radio",{label:"Decline coverage",name:"opt-in",value:"false",checked:"false"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("div",{class:"invalid-feedback",style:{display:this.error?"block":"none"},part:_},"Please select an option"),s("small",{part:g,innerHTML:null===(r=this.quote)||void 0===r?void 0:r.product.legal_disclaimer})))}};export{H as justifi_season_interruption_insurance}
@@ -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"./p-Cjcsf8ku.js";import"./p-BrRsgB8S.js";import{p as i}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{T as a,a as r,b as h,c as o,d as c,e as n,f as p,g as f,h as d,i as b,j as m,k as u,l as g}from"./p-BMJe4lzg.js";import{T as l}from"./p-CZfYo5-1.js";import{t as j,a as y}from"./p-CV8xqdt6.js";import{o as k,g as C}from"./p-Uqevvbqm.js";import"./p-BYsgavgS.js";import"./p-B09GVew-.js";import"./p-DkoufM1t.js";import"./p-sA8HBfkI.js";import"./p-CgiDds_u.js";import"./p-U3nU15el.js";const v=class{constructor(e){t(this,e),this.clickEvent=s(this,"click-event"),this.errorEvent=s(this,"error-event"),this.terminals=[],this.subAccounts=[],this.loading=!0,this.paging=i,this.pagingParams={},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").dataset.rowEntityId;if(!s)return;const e=this.terminals.find((t=>t.id===s));this.clickEvent.emit({name:l.row,data:e})}}updateOnPropChange(){this.fetchData()}componentWillLoad(){this.terminalsTable=new a(this.terminals,this.columns,j,y),this.getTerminals&&this.getSubAccounts&&this.fetchData(),k("set",(()=>{this.pagingParams={}})),k("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}fetchData(){this.loading=!0,this.getTerminals({params:this.terminalParams,onSuccess:async({terminals:t,pagingInfo:s})=>{this.terminals=t,this.paging=s,this.terminalsTable.collectionData=this.terminals,this.terminalsTable.columnKeys.includes("sub_account_name")?await 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.terminals=this.terminals.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 terminalParams(){const t=C();return Object.assign(Object.assign({},t),this.pagingParams)}get subAccountParams(){let t=this.terminals.map((t=>t.account_id));return{sub_account_id:[...new Set(t)].join(",")}}get entityId(){return this.terminals.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalsTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return e(g,{key:"47a3ae5348a5ca8d0994043e1c17605c123dee97"},e(r,{key:"cf0e28bb98f00d52d546bb84c045d596ff5def31"},e(h,{key:"06a0c7685a42b513c5f1bf913e2d783630e946f3"},e(o,{key:"0559e0bf9ee49cba9a769d91cbe6af5197ff6b45"},this.terminalsTable.columnData.map((t=>t)))),e(c,{key:"66c4756ef6c6eec274c77fc48c958c0611895cbd"},e(n,{key:"7ad0e2e15fe356bd5b22f75843915b7decf3a1c1",columnSpan:this.terminalsTable.columnKeys.length,isLoading:this.loading}),e(p,{key:"4191da227f556b4d9ae55533261ab1f1eaf17c9a",isEmpty:this.showEmptyState,columnSpan:this.terminalsTable.columnKeys.length}),e(f,{key:"2d6f63bb346c5d76f4966bc45899e6f380bf3283",columnSpan:this.terminalsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalsTable.rowData.map(((t,s)=>e(d,{"data-test-id":"table-row","data-row-entity-id":this.entityId[s],onClick:this.rowClickHandler},t)))),this.paging&&e(b,{key:"025a109c2fca7d00292f94507cb21ce40d6ab5fc"},e(m,{key:"7563a33f3b02210687e376f237bab6cc708626be"},e(u,{key:"bbdbc7913fc93e76425db5b972645efed56652a1",colSpan:this.terminalsTable.columnData.length},e("pagination-menu",{key:"7b0ccb15636e02cb8181e973637f56e9dd09fb2f",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})}))))))}static get watchers(){return{pagingParams:["updateOnPropChange"],getTerminals:["updateOnPropChange"],getSubAccounts:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{v as terminals_list_core}
@@ -0,0 +1 @@
1
+ import{r as e,c as t,h as i}from"./p-DwYM91AU.js";import{c as a,J as s}from"./p-BEu9YFnf.js";import{c as d}from"./p-BrRsgB8S.js";import{d as c}from"./p-sA8HBfkI.js";import{S as o}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{P as h}from"./p-DkoufM1t.js";import"./p-Dr8Z8wfP.js";import"./p-yyedWKWX.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-B09GVew-.js";import"./p-HXpYMWUU.js";import"./p-Cjcsf8ku.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";const f=class{constructor(i){e(this,i),this.errorEvent=t(this,"error-event"),this.loadedEvent=t(this,"loaded"),this.submitEvent=t(this,"submit-event"),this.availablePaymentMethods=[],this.errorMessage="",this.insuranceToggled=!1,this.isSubmitting=!1,this.disableBankAccount=!1,this.disableBnpl=!1,this.disableCreditCard=!1,this.disablePaymentMethodGroup=!1,this.hideBankAccountBillingForm=!1,this.hideCardBillingForm=!1}propChanged(){this.updateStore()}connectedCallback(){this.authToken&&this.checkoutId&&this.updateStore()}componentWillLoad(){a(),this.analytics=new s(this)}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}checkoutComplete(e){this.isSubmitting=!1}checkoutError(e){console.error("[justifi-checkout] error-event received",null==e?void 0:e.detail),this.isSubmitting=!1}checkoutChanged(e){this.availablePaymentMethods=this.disableBnpl?e.detail.availablePaymentMethodTypes.filter((e=>e!==h.SEZZLE)):e.detail.availablePaymentMethodTypes}async fillBillingForm(e){var t;d.billingFormFields=e,null===(t=this.tokenizePaymentMethodRef)||void 0===t||t.fillBillingForm(e)}async validate(){var e;return{isValid:await(null===(e=this.modularCheckoutRef)||void 0===e?void 0:e.validate())}}updateStore(){d.checkoutId=this.checkoutId,d.authToken=this.authToken,d.disableCreditCard=this.disableCreditCard,d.disableBankAccount=this.disableBankAccount,d.disablePaymentMethodGroup=this.disablePaymentMethodGroup}async submit(e){var t;this.isSubmitting=!0,null===(t=this.modularCheckoutRef)||void 0===t||t.submitCheckout(d.billingFormFields)}get showPaymentTypeHeader(){return!this.disableCreditCard&&!this.disableBankAccount}render(){var e,t;return i(o,{key:"e9f527c5dd4dc564c4fb00d69b27e07c90e8b552"},i("justifi-modular-checkout",{key:"e80dd4c78282fc428f0e78d6d87f71f262577f01",ref:e=>{this.modularCheckoutRef=e},authToken:this.authToken,checkoutId:this.checkoutId,preCompleteHook:this.preCompleteHook},i("div",{key:"92f3821b2566f6ede351145cafe934bb1b14e970",class:"row gy-3 jfi-checkout-core"},i("div",{key:"ed96eb7b2620df4c8398b36b62e2eb5744de7545",class:"col-12",part:c},i("justifi-header",{key:"a23f3ea139874c80830b9bd62b44bedad2520d89",text:"Summary",level:"h2",class:"fs-5 fw-bold pb-3"}),i("section",{key:"45f903ebb6cee7d382414fd04656b605fb5f9e91"},i("justifi-checkout-summary",{key:"7a6ba74f821aed6aee12682626bd1f304a90cc4b"}))),i("div",{key:"3930d68c41aa3a1b99371bbea285b2de4d734766",class:"col-12 mt-4"},i("slot",{key:"8cb5f1ef64ae6ecd25edf861b555dc6f20abd0ec",name:"insurance"})),i("div",{key:"3f8b4dae6eb90999927070027a77bfa9a4b09442",class:"col-12 mt-4"},i("justifi-header",{key:"4335e04295005071b061391d27a5cc4677519e71",text:"Payment",level:"h2",class:"fs-5 fw-bold pb-3"}),this.showPaymentTypeHeader&&i("justifi-header",{key:"1ca763ef15405ee55bf763bd7760f36e2925bbe1",text:"Select payment type",level:"h3",class:"fs-6 fw-bold lh-lg"}),i("div",{key:"c52c81c4b84fde4168037f06c7d5b6f491d2bea9",class:"d-flex flex-column"},i("section",{key:"3d1981827d98b947e541599582dc1f15bfe3f542"},i("div",{key:"8ddeb4dae00fe55092fba788c9fb2b44ad1a1240"},this.availablePaymentMethods.includes(h.APPLE_PAY)&&i("div",{key:"496486644e4caa90379e20cfb80b20c2670eef0b",class:"mb-3"},i("justifi-apple-pay",{key:"9d360fed1e166d0adf4f97f8b1817fde6a7dc0ec"})),this.availablePaymentMethods.includes(h.GOOGLE_PAY)&&i("div",{key:"e4d440ac6bedf38eb2baab3717d0d1308aaa5b10",class:"mb-3"},i("justifi-google-pay",{key:"9eee94d588e48fc5550cd3965f45612de3aedccb",ref:e=>this.googlePayRef=e})),i("justifi-saved-payment-methods",{key:"244e8877a4ce83ab8c4fff6051957d0ec50deafa"}),this.availablePaymentMethods.includes(h.SEZZLE)&&i("justifi-radio-list-item",{key:"37904744a21eb6f1f96e13831e3b0029aa87d25f",name:"paymentMethodType",value:h.SEZZLE,checked:(null===(e=null==d?void 0:d.selectedPaymentMethod)||void 0===e?void 0:e.type)===h.SEZZLE,label:i("justifi-sezzle-payment-method",{ref:e=>this.sezzlePaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.sezzlePaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),this.availablePaymentMethods.includes(h.PLAID)&&!this.disableBnpl&&i("justifi-radio-list-item",{key:"d2fc7e88a17372967a64edf57a33ef0758568357",name:"paymentMethodType",value:h.PLAID,checked:(null===(t=null==d?void 0:d.selectedPaymentMethod)||void 0===t?void 0:t.type)===h.PLAID,label:i("justifi-plaid-payment-method",{ref:e=>this.plaidPaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.plaidPaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),i("internal-tokenize-payment-method",{key:"b2c2b5b2db0970ac8bfb70141f9b0fa4545dddce",ref:e=>this.tokenizePaymentMethodRef=e,authToken:this.authToken,accountId:d.accountId,disableCreditCard:this.disableCreditCard,disableBankAccount:this.disableBankAccount,hideCardBillingForm:this.hideCardBillingForm,hideBankAccountBillingForm:this.hideBankAccountBillingForm,hideSubmitButton:!0,paymentMethodGroupId:d.paymentMethodGroupId}))))),i("div",{key:"e8f3ba632562b2369e6acc8a135647cc74dc0c0d",class:"mt-4"},i("justifi-button",{key:"e34306fed36d84a03a4e6ad3ba92abc276423590",text:"Pay",type:"submit",variant:"primary",clickHandler:e=>this.submit(e),disabled:this.isSubmitting,isLoading:this.isSubmitting,customStyle:{width:"100%",textAlign:"center"}})))))}static get watchers(){return{authToken:["propChanged"],checkoutId:["propChanged"],disableCreditCard:["propChanged"],disableBankAccount:["propChanged"],disablePaymentMethodGroup:["propChanged"]}}};export{f as justifi_checkout}
@@ -1 +1 @@
1
- import{r as s,c as t,h as e}from"./p-DwYM91AU.js";import{C as i,a as r}from"./p-Cjcsf8ku.js";import{C as o,B as h,c as n}from"./p-B5rtFhtR.js";import{D as a}from"./p-QmGrQis7.js";import{S as c}from"./p-BP2sTIQV.js";import{H as d}from"./p-InCWAej0.js";import"./p-CZfYo5-1.js";import{B as p}from"./p-XYgDHrVL.js";const m=class{constructor(e){s(this,e),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.submitEvent=t(this,"submit-event"),this.loading=!1,this.businessProvisioned=!1,this.currentStep=0,this.country=o.USA,this.allowOptionalFields=!1,this.setBusinessProvisioned=()=>new Promise((s=>{this.getBusiness({onSuccess:t=>{const e=new h(t.data);this.businessProvisioned=n(e),this.country=e.country_of_establishment,this.businessProvisioned&&this.errorEvent.emit({message:"A request to provision payments for this business has already been submitted.",errorCode:r.PROVISIONING_REQUESTED,severity:i.INFO}),s()},onError:({error:t,code:e,severity:i})=>{this.errorEvent.emit({message:t,errorCode:e,severity:i}),s()}})})),this.postProvisioningData=()=>{this.postProvisioning({onSuccess:s=>{this.submitEvent.emit({response:s})},onError:({error:s,code:t,severity:e})=>{this.submitEvent.emit({response:{error:s}}),this.errorEvent.emit({message:s,errorCode:t,severity:e})}})},this.refs=[],this.incrementSteps=()=>{if(this.currentStep<this.totalSteps)return this.currentStep++},this.decrementSteps=()=>this.currentStep--,this.previousStepButtonOnClick=()=>{this.clickEvent.emit({name:p.previousStep}),this.decrementSteps()},this.nextStepButtonOnClick=(s,t)=>{s.preventDefault(),this.clickEvent.emit({name:t}),this.refs[this.currentStep].validateAndSubmit({onSuccess:this.incrementSteps})}}handleFormCompleted(){this.postProvisioningData()}async componentWillLoad(){this.getBusiness&&await this.setBusinessProvisioned(),this.refs=[this.coreInfoRef,this.legalAddressRef,this.additionalQuestionsRef,this.representativeRef,this.ownersRef,this.bankAccountRef,this.termsRef]}get businessEndpoint(){return`entities/business/${this.businessId}`}get formDisabled(){return this.loading||this.businessProvisioned}get totalSteps(){return this.refs.length-1}get stepCounter(){return`${this.currentStep+1} of ${this.totalSteps+1}`}handleFormLoading(s){this.loading=s.detail}render(){return e(c,{key:"058aaacf6c0fe49ef24e50b575247efb470c4254"},e("div",{key:"d4d329af8f8e4ccd8e7ddb2d7050797fe9ec5824",class:"row gap-3"},e(d,{key:"d2358393171311c9dd6b03ca3509e2775d784e4c",text:this.formTitle}),e("justifi-payment-provisioning-form-steps",{key:"d7a8767e276c28c2ca0413ac0d1195cb98b9fe0b",businessId:this.businessId,authToken:this.authToken,refs:this.refs,currentStep:this.currentStep,allowOptionalFields:this.allowOptionalFields,country:this.country,handleFormLoading:this.handleFormLoading}),e("div",{key:"37dc95f2e8785c0e2ac969294b86318d81237b0b",class:"d-flex justify-content-between align-items-center"},e("div",{key:"54e6fe77e63faf3b2ae725c349748cf9c34322b0",class:"d-flex align-items-center",part:a},this.stepCounter),e("justifi-payment-provisioning-form-buttons",{key:"aa3e1c621248f1daa48ae7e66dd76c03e0a9eb3c",currentStep:this.currentStep,totalSteps:this.totalSteps,formLoading:this.loading,formDisabled:this.formDisabled,previousStepButtonOnClick:this.previousStepButtonOnClick,nextStepButtonOnClick:this.nextStepButtonOnClick}))))}};export{m as justifi_payment_provisioning_core}
1
+ import{r as s,c as t,h as e}from"./p-DwYM91AU.js";import{C as i,a as r}from"./p-Cjcsf8ku.js";import{C as o,B as h,c as n}from"./p-B5rtFhtR.js";import{G as a}from"./p-sA8HBfkI.js";import{S as c}from"./p-BP2sTIQV.js";import{H as d}from"./p-DmdEjScI.js";import"./p-CZfYo5-1.js";import{B as p}from"./p-XYgDHrVL.js";const m=class{constructor(e){s(this,e),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.submitEvent=t(this,"submit-event"),this.loading=!1,this.businessProvisioned=!1,this.currentStep=0,this.country=o.USA,this.allowOptionalFields=!1,this.setBusinessProvisioned=()=>new Promise((s=>{this.getBusiness({onSuccess:t=>{const e=new h(t.data);this.businessProvisioned=n(e),this.country=e.country_of_establishment,this.businessProvisioned&&this.errorEvent.emit({message:"A request to provision payments for this business has already been submitted.",errorCode:r.PROVISIONING_REQUESTED,severity:i.INFO}),s()},onError:({error:t,code:e,severity:i})=>{this.errorEvent.emit({message:t,errorCode:e,severity:i}),s()}})})),this.postProvisioningData=()=>{this.postProvisioning({onSuccess:s=>{this.submitEvent.emit({response:s})},onError:({error:s,code:t,severity:e})=>{this.submitEvent.emit({response:{error:s}}),this.errorEvent.emit({message:s,errorCode:t,severity:e})}})},this.refs=[],this.incrementSteps=()=>{if(this.currentStep<this.totalSteps)return this.currentStep++},this.decrementSteps=()=>this.currentStep--,this.previousStepButtonOnClick=()=>{this.clickEvent.emit({name:p.previousStep}),this.decrementSteps()},this.nextStepButtonOnClick=(s,t)=>{s.preventDefault(),this.clickEvent.emit({name:t}),this.refs[this.currentStep].validateAndSubmit({onSuccess:this.incrementSteps})}}handleFormCompleted(){this.postProvisioningData()}async componentWillLoad(){this.getBusiness&&await this.setBusinessProvisioned(),this.refs=[this.coreInfoRef,this.legalAddressRef,this.additionalQuestionsRef,this.representativeRef,this.ownersRef,this.bankAccountRef,this.termsRef]}get businessEndpoint(){return`entities/business/${this.businessId}`}get formDisabled(){return this.loading||this.businessProvisioned}get totalSteps(){return this.refs.length-1}get stepCounter(){return`${this.currentStep+1} of ${this.totalSteps+1}`}handleFormLoading(s){this.loading=s.detail}render(){return e(c,{key:"058aaacf6c0fe49ef24e50b575247efb470c4254"},e("div",{key:"d4d329af8f8e4ccd8e7ddb2d7050797fe9ec5824",class:"row gap-3"},e(d,{key:"d2358393171311c9dd6b03ca3509e2775d784e4c",text:this.formTitle}),e("justifi-payment-provisioning-form-steps",{key:"d7a8767e276c28c2ca0413ac0d1195cb98b9fe0b",businessId:this.businessId,authToken:this.authToken,refs:this.refs,currentStep:this.currentStep,allowOptionalFields:this.allowOptionalFields,country:this.country,handleFormLoading:this.handleFormLoading}),e("div",{key:"37dc95f2e8785c0e2ac969294b86318d81237b0b",class:"d-flex justify-content-between align-items-center"},e("div",{key:"54e6fe77e63faf3b2ae725c349748cf9c34322b0",class:"d-flex align-items-center",part:a},this.stepCounter),e("justifi-payment-provisioning-form-buttons",{key:"aa3e1c621248f1daa48ae7e66dd76c03e0a9eb3c",currentStep:this.currentStep,totalSteps:this.totalSteps,formLoading:this.loading,formDisabled:this.formDisabled,previousStepButtonOnClick:this.previousStepButtonOnClick,nextStepButtonOnClick:this.nextStepButtonOnClick}))))}};export{m as justifi_payment_provisioning_core}
@@ -0,0 +1 @@
1
+ import{h as e,r as t,c as a}from"./p-DwYM91AU.js";import{i as s,e as i,d as c}from"./p-B09GVew-.js";import{a as d,b as r,D as o,c as l,C as b,E as h}from"./p-DUmUUj9r.js";import{B as f}from"./p-Ty7R7tsw.js";import{S as n}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{M as p}from"./p-C2Senazf.js";import{S as y}from"./p-CsgUIrv8.js";import{a as u,B as v}from"./p-U3nU15el.js";import"./p-HXpYMWUU.js";import"./p-sA8HBfkI.js";const m=()=>e("div",{class:"row gap-3"},e("div",{class:"col-12"},e(y,{width:"35%",height:"30px"})),e("div",{class:"col-12"},e(y,{width:"70%"})),e("div",{class:"col-12"},e(y,{width:"40%"})),e("div",{class:"col-12"},e(y,{width:"40%"})),e("div",{class:"col-12"},e(y,{width:"100%"})),e("div",{class:"col-12"},e(y,{width:"80%"}))),k=class{constructor(e){t(this,e),this.errorEvent=a(this,"error-event"),this.recordClickEvent=a(this,"record-click-event"),this.enableRecordClick=!1,this.loading=!0,this.errorMessage=null,this.downloadCSV=()=>{this.getPayoutCSV({payoutId:this.payout.id,onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a})}})},this.handleRecordClick=e=>{this.recordClickEvent.emit({id:e,type:"account"})}}componentWillLoad(){this.getPayout&&this.fetchData()}getPayoutWatcher(){this.fetchData()}fetchData(){this.loading=!0,this.getPayout({onSuccess:e=>{this.errorMessage=null,this.payout=e,this.loading=!1},onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a}),this.loading=!1}})}formatMethod(e){return"ach"===e?"ACH":s(e)}render(){var t;return e(n,{key:"bce8893748b454d55c8d2651f0decaf24f9d23f0"},this.loading&&e(m,{key:"6779860e9708f71da7466911a23e4b6bae082f33"}),!this.loading&&this.errorMessage&&h(this.errorMessage),!this.loading&&this.payout&&e("justifi-details",{key:"bc148d8ac046381a625f1ca46061f2d1038cd962","error-message":this.errorMessage},e(d,{key:"08a12c76478d3c877b27cbc778e8d8946bfd4f61",slot:"head-info",badge:e("div",{class:"d-flex gap-1"},p(null===(t=this.payout)||void 0===t?void 0:t.status),e(u,"expedited"===this.payout.settlement_priority?{variant:v.WARNING,title:"Expedited",text:"Expedited"}:{variant:v.SECONDARY,title:"Standard",text:"Standard"})),title:this.payout.formattedPaymentAmount(this.payout.amount)},e(r,{key:"eed2fc60701ee7a63316fc107071ce1b0f8a7887",classes:"border-1 border-end",title:"Updated At",value:`${i(this.payout.updated_at)} ${c(this.payout.updated_at)}`}),e(r,{key:"47256f8c5220bd891e015b66deeeada1d8686896",classes:"border-1 border-end",title:"Created At",value:`${i(this.payout.created_at)} ${c(this.payout.created_at)}`}),e(r,{key:"55768b182ed868f01ecc13a17760ba3e50be406c",title:"ID",value:this.payout.id}),e("div",{key:"3a3eb255b1dc769c48123b0290d2e326beb05486",class:"m-4"},e(f,{key:"ad8109745fb5266e908ce46b7997880679eef419",variant:"secondary",class:"btn btn-outline-secondary d-flex align-items-center",onClick:this.downloadCSV},"Export CSV"))),e("div",{key:"dd04956b57d3fc8f8a2ab04e3773cedbdc609e7e",slot:"detail-sections"},e(o,{key:"ad19ec1078837f472f09adafc6de1bb285774a57",sectionTitle:"Details"}),e("div",{key:"2abbe66f3c1fb693d108e625b224d2abd2c79856",class:"d-flex flex-column gap-2 w-100"},e(l,{key:"bedfc199018c36d5f5e2bc397be7145486e88b06",title:"Date paid",value:i(this.payout.deposits_at)}),e(l,{key:"0abebcb95d22281fd711e282e91e0a946a8aa9d9",title:"Statement Description",value:this.payout.description}),e(l,{key:"a65008e3edc341a951e68335d6302258cb0423c0",title:"Payout Method",value:this.formatMethod(this.payout.delivery_method)}),e(l,{key:"62284db58bb08fa8ec78380d226c551c1c40aa5c",title:"Amount",value:this.payout.formattedPaymentAmount(this.payout.amount)}),e(l,{key:"657392699e94a0ca8a7f114c0b94bb7fe2a863fd",title:"Fee",value:this.payout.formattedPaymentAmount(this.payout.fees_total)})),e(o,{key:"dd553173a96aa066585c42e274b5397ce32f12c8",sectionTitle:"Account"}),e("div",{key:"a078180c0e26466aa95b7e627b3f0ae0157f88fd",class:"d-flex flex-column gap-2 w-100"},e(l,{key:"8fc8379e47bea1c18e39ec526587eebc11a63233",title:"ID",value:this.payout.account_id,onClick:this.enableRecordClick?()=>this.handleRecordClick(this.payout.account_id):void 0}),e(l,{key:"9caec1c44313a19192a025968ff2055e9871cd2c",title:"Account Type",value:this.payout.bank_account.account_type}),e(l,{key:"f3e0eec504eff9831aea0258d136224c5331b77e",title:"Institution",value:this.payout.bank_account.account_type}),e(l,{key:"d9f4e1cf8ceec76af0992e4774d098120af1ecd7",title:"Routing Number",value:this.payout.bank_account.routing_number}),e(l,{key:"5cab1bcc2be4c60412ef3f7263ac700a4b0a127b",title:"Account Number",value:`**** ${this.payout.bank_account.account_number_last4}`})),this.payout.metadata&&[e(o,{key:"ad8a029e6f19bb586b6f124160bc565a07ef7515",sectionTitle:"Metadata"}),e("div",{key:"2ad3cb860977116929da7b475787c90e0202e7ad",class:"d-table gap-2 w-100"},e(b,{key:"ceab82b2cab61a721af79a62b7e4fe0f6c2035e6",metadata:this.payout.metadata}))])))}static get watchers(){return{getPayout:["getPayoutWatcher"]}}};export{k as payout_details_core}
@@ -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-BEu9YFnf.js";import{T as n}from"./p-CCxsFwC4.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{f as p}from"./p-BrRsgB8S.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-C9VmfRis.js";import{S as d}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d as f}from"./p-CV8xqdt6.js";import"./p-Dr8Z8wfP.js";import"./p-yyedWKWX.js";import"./p-B09GVew-.js";import"./p-BYsgavgS.js";import"./p-DkoufM1t.js";import"./p-U3nU15el.js";import"./p-sA8HBfkI.js";const l=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=f,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:"9bf1797fc21c7fdf2b58aedab5819513338e714b"},i("terminals-list-core",{key:"46c5f5cc5a436d47e4813207cce07d28a4f20ef7",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,c as e,h as t,H as a}from"./p-DwYM91AU.js";import{a2 as i,a3 as c,a4 as h,a5 as r,a6 as o,l as f}from"./p-sA8HBfkI.js";import{F as b}from"./p-CK_XkZku.js";import{F as d}from"./p-CZ3F1ZAT.js";import"./p-CZfYo5-1.js";const m=class{constructor(t){s(this,t),this.formControlInput=e(this,"formControlInput"),this.formControlBlur=e(this,"formControlBlur"),this.isFocused=!1,this.handleFormControlInput=s=>{s.preventDefault();const e=s.target,t=e.getAttribute("name");this.inputHandler(t,e.checked),this.formControlInput.emit({name:t,value:e.value})},this.updateInput=s=>{this.checkboxElement.checked=s}}get part(){return this.errorText?i:this.isFocused&&this.checked?c:this.isFocused?h:this.checked?r:o}render(){return t(a,{key:"b21aecbedc9eabe175a7c49de7289e7f514a2dca"},t("div",{key:"7ce9735adb9b351864381ae4966e5344be8cb2de",class:"form-group d-flex flex-column"},t("div",{key:"b99004c99627c2ffdc31c098d3ae956f391fbae3",class:"form-check"},t("input",{key:"f0e2bb106393a2eff4f172eac1c1e97aa8a184e2",ref:s=>this.checkboxElement=s,type:"checkbox",id:this.name,name:this.name,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()},onInput:this.handleFormControlInput,part:this.part,class:this.errorText?"form-check-input is-invalid":"form-check-input",disabled:this.disabled,checked:this.checked}),t("label",{key:"18911a1180bd64375104fdbb3ba9a89f822e33cb",class:"form-check-label",htmlFor:this.name,part:f},this.label)),t(b,{key:"4d0d0df3bf3cbaf1314e37cbb24b5ba61446d1f7",helpText:this.helpText,name:this.name}),t(d,{key:"5270fa11eecdc61c155a9eeacb83781d7b2445d8",errorText:this.errorText,name:this.name})))}};export{m as form_control_checkbox}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as i}from"./p-DwYM91AU.js";import{P as r}from"./p-DY_3dcgR.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as o,a as e}from"./p-Cjcsf8ku.js";import{e as p}from"./p-BrRsgB8S.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as a,a as h}from"./p-D2muobcE.js";import{E as n}from"./p-DUmUUj9r.js";import{c as m,J as c}from"./p-BEu9YFnf.js";import{m as d}from"./p-DYGIC0QH.js";import"./p-yyedWKWX.js";import"./p-B09GVew-.js";import"./p-BYsgavgS.js";import"./p-DkoufM1t.js";import"./p-sA8HBfkI.js";import"./p-Dr8Z8wfP.js";const u=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event"),this.enableRecordClick=!1,this.errorMessage=null,this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){m(),this.analytics=new c(this),this.initializeServices()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeServices()}initializeServices(){this.payoutId&&this.authToken?(this.getPayout=(({id:t,authToken:s,service:i})=>async({onSuccess:r,onError:e})=>{var n;try{const m=await i.fetchPayout(t,s);m.error?e({error:h(m.error),code:a(null===(n=m.error)||void 0===n?void 0:n.code),severity:o.ERROR}):r(new p(m.data))}catch(t){e({error:h(t),code:a(null==t?void 0:t.code),severity:o.ERROR})}})({id:this.payoutId,authToken:this.authToken,service:new r}),this.getPayoutCSV=d({authToken:this.authToken,service:new r})):(this.errorMessage="Failed to load payout details. payoutId or authToken is not provided.",this.errorEvent.emit({message:this.errorMessage,errorCode:e.MISSING_PROPS,severity:o.ERROR}))}render(){return this.errorMessage?n(this.errorMessage):i("payout-details-core",{getPayout:this.getPayout,getPayoutCSV:this.getPayoutCSV,"onError-event":this.handleErrorEvent,enableRecordClick:this.enableRecordClick})}static get watchers(){return{payoutId:["propChanged"],authToken:["propChanged"]}}};export{u as justifi_payout_details}
@@ -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 d,c as i}from"./p-DdJYXOQX.js";import{j as l,k as f,t as r,m as c,n as p,o}from"./p-sA8HBfkI.js";import{S as n}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{c as m,a as b}from"./p-B09GVew-.js";import"./p-BFTU3MAI.js";import"./p-BYsgavgS.js";import"./p-HXpYMWUU.js";const u=class{constructor(a){e(this,a),this.setParamsOnChange=(e,a)=>{s[e]=a},this.handleDateInput=(e,a)=>{const t=m(a,{setExactTime:!0});this.setParamsOnChange(e,t)}}componentWillLoad(){this.debouncedSetParamsOnChange=t.debounce(this.setParamsOnChange,300),Object.entries({payment_id:this.paymentId,terminal_id:this.terminalId,payment_status:this.paymentStatus,created_after:this.createdAfter,created_before:this.createdBefore}).forEach((([e,a])=>{a&&(d[e]=a)}))}get paymentStatusOptions(){return[{label:"All",value:""},{label:"Pending",value:"pending"},{label:"Authorized",value:"authorized"},{label:"Succeeded",value:"succeeded"},{label:"Failed",value:"failed"},{label:"Disputed",value:"disputed"},{label:"Refunded",value:"refunded"}]}render(){const e=Object.assign({},s);return a(n,{key:"d70609f15429149e680ec8a6639daddc2f406292"},a("table-filters-menu",{key:"269e119f2ff71c88619c4880259369402cca8333",params:e,clearParams:i,part:l},a("div",{key:"e78ce4dcf8459ff1f89387f65fa535d476c7bf38",class:"grid-cols-2 gap-3 p-1"},a("div",{key:"3ae16db403cea6696f70453eca9061d5df7059a1",class:"p-2"},a("form-control-text",{key:"0c1f547fd443777948efa0e2227c7b31cc7c4b88",name:"payment_id",label:"Payment ID",inputHandler:this.debouncedSetParamsOnChange,defaultValue:this.paymentId||s.payment_id,disabled:!!this.paymentId,part:f})),a("div",{key:"a15f9a061bfb36869218c7db37794230272a91d9",class:"p-2"},a("form-control-text",{key:"af182352bdf23763f23eb45eb3a0d96fc67e9ce2",name:"terminal_id",label:"Terminal ID",inputHandler:this.debouncedSetParamsOnChange,defaultValue:this.terminalId||s.terminal_id,disabled:!!this.terminalId,part:r})),a("div",{key:"73347a52d9ee6214718cfcb664ff2455ebb57a50",class:"p-2"},a("form-control-select",{key:"953f2d385966967e21cd028eed1240700a42a6fb",name:"payment_status",label:"Status",options:this.paymentStatusOptions,inputHandler:this.setParamsOnChange,defaultValue:this.paymentStatus||s.payment_status||"",disabled:!!this.paymentStatus,part:c})),a("div",{key:"4d788fb9096dd74fea5aca82f86cd1fef2ec3b0d",class:"p-2"},a("form-control-date",{key:"893959a1bc4eb202fc1255b9abc7e6767ae3d22e",name:"created_after",label:"Created After",inputHandler:this.handleDateInput,defaultValue:b(this.createdAfter,{showInputDateTime:!0})||b(s.created_after,{showInputDateTime:!0}),showTime:!0,disabled:!!this.createdAfter,part:p})),a("div",{key:"44a0fba41fb3cff8de9397a2437f9edf685743e8",class:"p-2"},a("form-control-date",{key:"e96f980242e313b55f7b6d379d813faedd0dee2d",name:"created_before",label:"Created Before",inputHandler:this.handleDateInput,defaultValue:b(this.createdBefore,{showInputDateTime:!0})||b(s.created_before,{showInputDateTime:!0}),showTime:!0,disabled:!!this.createdBefore,part:o})))))}};export{u as justifi_payments_list_filters}
@@ -0,0 +1 @@
1
+ import{r as e,h as t}from"./p-DwYM91AU.js";import{v as s}from"./p-sA8HBfkI.js";import{S as o}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";const a=class{constructor(t){e(this,t)}render(){return t(o,{key:"def03655a2fec491cdcf915e86ce076fbce3fe2c",class:"payment-method"},t("div",{key:"774b1eddeb552374158a085152d78f03345a56a0",class:"radio-list-item p-3",part:s,onClick:this.clickHandler,hidden:this.radioButtonHidden},t("form-control-radio",{key:"24dbc2f35760401d64eeb252b178ede3fb0631fe",name:"paymentMethodType",value:this.paymentMethodOptionId,checked:this.isSelected,label:this.label})))}};export{a as payment_method_option}
@@ -0,0 +1 @@
1
+ import{r as t,c as e,h as s,H as a,g as i}from"./p-DwYM91AU.js";import{c as o,l as h,b as r,X as l,a as f}from"./p-sA8HBfkI.js";import{F as n}from"./p-CZ3F1ZAT.js";import"./p-CZfYo5-1.js";const c=class{constructor(s){t(this,s),this.formControlInput=e(this,"formControlInput"),this.formControlBlur=e(this,"formControlBlur"),this.isFocused=!1,this.handleFormControlInput=t=>{const e=t.target,s=e.getAttribute("name");this.inputHandler(s,e.value),this.formControlInput.emit(e.value)},this.updateInput=t=>{this.selectElement.value=t}}handleDefaultValueChange(t){this.updateInput(t)}componentDidLoad(){this.updateInput(this.defaultValue)}get part(){let t=o;return this.errorText&&(t=r),this.disabled&&(t=l),this.isFocused&&(t=f),t}render(){var t;return s(a,{key:"605b6cb9bfa7bac528ee0af9c4deb5e7b1356b93"},s("div",{key:"f8b42609971ff02c4bc147a113bb4a025d32bcd8",class:"form-group d-flex flex-column"},s("div",{key:"26c87da7b92edbb7fd41825a4e64b642778d0808",class:"d-flex align-items-start gap-2"},s("label",{key:"43ad562c323b586bf7ab0260258d8678ef3194aa",part:h,class:"form-label",htmlFor:this.name},this.label),s("form-control-tooltip",{key:"1e4b1fa0e9bae57b6e783fb873de38c49ae7a8a4",helpText:this.helpText})),s("select",{key:"bef2df140499a642ea9bf5bd3f6d7b558042e733",ref:t=>this.selectElement=t,id:this.name,name:this.name,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()},onInput:this.handleFormControlInput,part:this.part,class:this.errorText?"form-select is-invalid":"form-select",disabled:this.disabled},null===(t=this.options)||void 0===t?void 0:t.map((t=>s("option",{value:t.value},t.label)))),s(n,{key:"99abaaa766c1270cf1cfd926320d343393b13d1d",errorText:this.errorText,name:this.name})))}static get watchers(){return{defaultValue:["handleDefaultValueChange"]}}},d=class{constructor(s){t(this,s),this.formControlInput=e(this,"formControlInput"),this.formControlBlur=e(this,"formControlBlur"),this.isFocused=!1,this.handleFormControlInput=t=>{const e=t.target,s=e.getAttribute("name");this.inputHandler(s,e.value),this.formControlInput.emit({name:s,value:e.value})},this.updateInput=t=>{const e=this.el.querySelector("input");e&&(e.value=t||"")}}handleDefaultValueChange(t){this.updateInput(t)}componentDidLoad(){this.updateInput(this.defaultValue)}get part(){return this.errorText?r:this.disabled?l:this.isFocused?f:o}render(){return s(a,{key:"559f086283d08b505d31b39e181581d30038aa6a"},s("div",{key:"4f86bb1d540bac675f354b90ea197a5772a4c6f5",class:"form-group d-flex flex-column"},s("div",{key:"0012abb57c9d764af117e4a7c94a46d1cf155578",class:"d-flex align-items-start gap-2"},s("label",{key:"0af1f99196b62eb76901c4656e231fde993c5e0f",part:h,class:"form-label",htmlFor:this.name},this.label),s("form-control-tooltip",{key:"364a0e5f3d5229012f8ab8815938d99f0d1e9e06",helpText:this.helpText})),s("input",{key:"2b068466f069282a6a5acdd0842bb0f96db6944f",id:this.name,name:this.name,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()},onInput:this.handleFormControlInput,onKeyDown:this.keyDownHandler,onPaste:this.keyDownHandler,maxLength:this.maxLength,part:this.part,class:this.errorText?"form-control is-invalid":"form-control",type:"text",disabled:this.disabled}),s(n,{key:"602fc385905ba52c551aa73ef71e29f0ef16084e",errorText:this.errorText,name:this.name})))}get el(){return i(this)}static get watchers(){return{defaultValue:["handleDefaultValueChange"]}}};export{c as form_control_select,d as form_control_text}