@justifi/webcomponents 6.7.2 → 6.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (788) hide show
  1. package/dist/cjs/{Api-QUTWjGTy.js → Api-CVbEWBG6.js} +1 -1
  2. package/dist/cjs/{Business-DWHy_-z9.js → Business-CB8EVrhD.js} +6 -0
  3. package/dist/cjs/{GooglePay-BwiJ_80p.js → Plaid-DxPvVu0H.js} +54 -1
  4. package/dist/cjs/additional-questions-details_5.cjs.entry.js +3 -3
  5. package/dist/cjs/{badge-Cc87HAsf.js → badge-DkOPisAV.js} +2 -2
  6. package/dist/cjs/bank-account-document-form-inputs_9.cjs.entry.js +532 -0
  7. package/dist/cjs/bank-account-form.cjs.entry.js +7 -7
  8. package/dist/cjs/{business-additional-questions-schema-Y1mXnwUT.js → business-additional-questions-schema-Cnh6AXQU.js} +5 -3
  9. package/dist/cjs/business-details-core.cjs.entry.js +7 -7
  10. package/dist/cjs/{business-form-options-e9UFw4P-.js → business-form-options-B3CbEmdc.js} +1 -1
  11. package/dist/cjs/{business-identity-schema-D_OO0Suf.js → business-identity-schema-0jg2Thn9.js} +6 -2
  12. package/dist/cjs/{business.service-q93NsTG_.js → business.service-zGEitIbP.js} +3 -3
  13. package/dist/cjs/{button-fUPGXjU_.js → button-C2p1BMP-.js} +2 -2
  14. package/dist/cjs/card-form.cjs.entry.js +7 -7
  15. package/dist/cjs/{check-pkg-version-BG-Rfkh5.js → check-pkg-version-DKH70uPq.js} +12 -11
  16. package/dist/cjs/{checkout.service-CwelwhrT.js → checkout.service-DT13pWxH.js} +3 -3
  17. package/dist/cjs/checkouts-list-core.cjs.entry.js +14 -14
  18. package/dist/cjs/{payments-list-params-state-DfZySwaC.js → checkouts-list-params-state-vGJZ6Oe2.js} +1 -1
  19. package/dist/cjs/{checkouts-table-BBtqxG2F.js → checkouts-table-DftTbgXr.js} +3 -3
  20. package/dist/cjs/{config-state-CYoBVAca.js → config-state-BIgGhhe9.js} +1 -1
  21. package/dist/cjs/{country-config-MCOhn8o3.js → country-config-ETD-7Wb7.js} +1 -1
  22. package/dist/cjs/custom-popper_2.cjs.entry.js +52 -21
  23. package/dist/cjs/{dispute.service-q5ha39uN.js → dispute.service-GDUl1Wjs.js} +3 -3
  24. package/dist/cjs/form-alert_5.cjs.entry.js +11 -11
  25. package/dist/cjs/form-control-checkbox.cjs.entry.js +11 -8
  26. package/dist/cjs/form-control-date.cjs.entry.js +7 -7
  27. package/dist/cjs/{form-control-error-text-Dg_65HGK.js → form-control-error-text-BC5aRpfl.js} +2 -2
  28. package/dist/cjs/form-control-file-v2_2.cjs.entry.js +17 -10
  29. package/dist/cjs/{form-control-help-text-tB5u1-5M.js → form-control-help-text-B2yMic8i.js} +2 -2
  30. package/dist/cjs/form-control-help-text.cjs.entry.js +1 -1
  31. package/dist/cjs/form-control-monetary-provisioning.cjs.entry.js +12 -8
  32. package/dist/cjs/form-control-monetary.cjs.entry.js +8 -8
  33. package/dist/cjs/form-control-number-masked_3.cjs.entry.js +13 -11
  34. package/dist/cjs/{owner-form-core_2.cjs.entry.js → form-control-number_3.cjs.entry.js} +71 -18
  35. package/dist/cjs/form-control-radio.cjs.entry.js +9 -6
  36. package/dist/cjs/form-control-select_2.cjs.entry.js +11 -11
  37. package/dist/cjs/{get-business-D9ZHyPem.js → get-business-CP0ALW9n.js} +1 -1
  38. package/dist/cjs/{get-payment-details-DidIAK2i.js → get-payment-details-IA5Toi7Z.js} +4 -4
  39. package/dist/cjs/{get-subaccounts-BE_wcfM7.js → get-subaccounts-DNMZjAyT.js} +5 -5
  40. package/dist/cjs/gross-payment-chart-core.cjs.entry.js +6 -6
  41. package/dist/cjs/{header-1-Bqejh9no.js → header-1-B-nd_U7n.js} +2 -2
  42. package/dist/cjs/{header-3-DQ649Me2.js → header-3--BEJGMFA.js} +2 -2
  43. package/dist/cjs/hidden-input_2.cjs.entry.js +10 -10
  44. package/dist/cjs/{index-mmd0OhmD.js → index-W-zoNiyM.js} +90 -21
  45. package/dist/cjs/index-p7cvUYAE.js +4450 -0
  46. package/dist/cjs/{input-handlers-D6QMwPTB.js → input-handlers-gV1LyFy3.js} +1 -1
  47. package/dist/cjs/{insurance-state-DsGnIHMM.js → insurance-state-CiVJ5e26.js} +3 -3
  48. package/dist/cjs/internal-tokenize-payment-method_7.cjs.entry.js +34 -34
  49. package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +101 -67
  50. package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +10 -10
  51. package/dist/cjs/justifi-apple-pay_8.cjs.entry.js +247 -317
  52. package/dist/cjs/justifi-bank-account-billing-form-simple_3.cjs.entry.js +10 -10
  53. package/dist/cjs/justifi-business-details.cjs.entry.js +13 -13
  54. package/dist/cjs/justifi-business-form.cjs.entry.js +22 -22
  55. package/dist/cjs/justifi-checkout.cjs.entry.js +22 -22
  56. package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +17 -17
  57. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +17 -17
  58. package/dist/cjs/justifi-config-provider.cjs.entry.js +3 -3
  59. package/dist/cjs/justifi-details.cjs.entry.js +4 -4
  60. package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +3 -3
  61. package/dist/cjs/justifi-dispute-management.cjs.entry.js +11 -11
  62. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +25 -25
  63. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +11 -11
  64. package/dist/cjs/justifi-order-terminals.cjs.entry.js +20 -20
  65. package/dist/cjs/justifi-payment-details.cjs.entry.js +14 -14
  66. package/dist/cjs/justifi-payment-provisioning-core.cjs.entry.js +23 -11
  67. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +11 -11
  68. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +17 -17
  69. package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +7 -7
  70. package/dist/cjs/justifi-payments-list.cjs.entry.js +17 -17
  71. package/dist/cjs/justifi-payout-details.cjs.entry.js +13 -13
  72. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +17 -17
  73. package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +7 -7
  74. package/dist/cjs/justifi-payouts-list.cjs.entry.js +18 -18
  75. package/dist/cjs/justifi-refund-payment.cjs.entry.js +20 -20
  76. package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +4 -4
  77. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +17 -17
  78. package/dist/cjs/justifi-skeleton.cjs.entry.js +5 -5
  79. package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +18 -18
  80. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +15 -15
  81. package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +14 -14
  82. package/dist/cjs/justifi-terminals-list.cjs.entry.js +17 -17
  83. package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +2 -2
  84. package/dist/cjs/loader.cjs.js +2 -2
  85. package/dist/cjs/{package-Df5lTFe6.js → package-B4vs5j7c.js} +1 -1
  86. package/dist/cjs/pagination-menu.cjs.entry.js +2 -2
  87. package/dist/cjs/{parts-BVbaniVM.js → parts-BsBVknuf.js} +1 -0
  88. package/dist/cjs/payment-details-core.cjs.entry.js +21 -21
  89. package/dist/cjs/payment-method-option.cjs.entry.js +4 -4
  90. package/dist/cjs/payment-provisioning-loading-B3hvtd9o.js +12 -0
  91. package/dist/cjs/{payment.service-CyHFdJ7n.js → payment.service-QODfB293.js} +3 -3
  92. package/dist/cjs/payments-list-core.cjs.entry.js +15 -15
  93. package/dist/cjs/{payouts-list-params-state-DfZySwaC.js → payments-list-params-state-vGJZ6Oe2.js} +1 -1
  94. package/dist/cjs/{payments-status-BP4u31jU.js → payments-status-BAR25wA6.js} +2 -2
  95. package/dist/cjs/{payments-table-CWXVhECV.js → payments-table-BLJ54fGU.js} +3 -3
  96. package/dist/cjs/payout-details-core.cjs.entry.js +13 -13
  97. package/dist/cjs/{payout.service-Half-hdB.js → payout.service-k7GBuYzk.js} +3 -3
  98. package/dist/cjs/payouts-list-core.cjs.entry.js +15 -15
  99. package/dist/cjs/{checkouts-list-params-state-DfZySwaC.js → payouts-list-params-state-vGJZ6Oe2.js} +1 -1
  100. package/dist/cjs/{payouts-status-CM5Zy-0J.js → payouts-status-uZAaS1RP.js} +2 -2
  101. package/dist/cjs/{payouts-table-ZLTcfkUm.js → payouts-table-C4jZJ8rq.js} +3 -3
  102. package/dist/cjs/plaid-icon-DTpONc_Q.js +46 -0
  103. package/dist/cjs/{schema-validations-Bf2mk2xU.js → schema-validations-BakyfJpE.js} +19 -3
  104. package/dist/cjs/{skeleton-B8dzxFFr.js → skeleton-BGGMhPJj.js} +2 -2
  105. package/dist/cjs/{spinner-jHyLNCGO.js → spinner-CV2CNXOQ.js} +2 -2
  106. package/dist/cjs/{styled-host-D5g7INLE.js → styled-host-DAi5SuFa.js} +1 -1
  107. package/dist/cjs/{table-CrtpRwGN.js → table-eTN_pRIP.js} +3 -3
  108. package/dist/cjs/table-filters-menu.cjs.entry.js +4 -4
  109. package/dist/cjs/terminal-orders-list-core.cjs.entry.js +14 -14
  110. package/dist/cjs/{terminal-orders-list-params-state-DfZySwaC.js → terminal-orders-list-params-state-vGJZ6Oe2.js} +1 -1
  111. package/dist/cjs/{terminal-orders-table-DT53anT3.js → terminal-orders-table-C6j6Mx_r.js} +8 -8
  112. package/dist/cjs/terminal-quantity-selector.cjs.entry.js +4 -4
  113. package/dist/cjs/{terminal.service-CFt55QNO.js → terminal.service-A90K3XNq.js} +3 -3
  114. package/dist/cjs/terminals-list-core.cjs.entry.js +14 -14
  115. package/dist/cjs/terminals-list-params-state-vGJZ6Oe2.js +22 -0
  116. package/dist/cjs/{terminals-table-DahpSz98.js → terminals-table-DZz8k4tP.js} +3 -3
  117. package/dist/cjs/{utils-CMiA4X7s.js → utils-T6hRmGuY.js} +2 -2
  118. package/dist/cjs/webcomponents.cjs.js +30 -3
  119. package/dist/collection/api/Analytics.js +8 -7
  120. package/dist/collection/api/Business.js +3 -0
  121. package/dist/collection/api/Identity.js +3 -0
  122. package/dist/collection/api/Plaid.js +50 -0
  123. package/dist/collection/api/index.js +1 -0
  124. package/dist/collection/api/services/plaid.service.js +13 -0
  125. package/dist/collection/collection-manifest.json +1 -0
  126. package/dist/collection/components/business-details/additional-questions-details/additional-questions-details.js +1 -1
  127. package/dist/collection/components/business-details/business-details-core.js +2 -2
  128. package/dist/collection/components/business-details/business-details.js +2 -2
  129. package/dist/collection/components/business-details/core-info-details/core-info-details.js +1 -1
  130. package/dist/collection/components/business-details/legal-address-details/legal-address-details.js +1 -1
  131. package/dist/collection/components/business-details/owner-details/owner-details.js +1 -1
  132. package/dist/collection/components/business-details/representative-details/representative-details.js +1 -1
  133. package/dist/collection/components/business-forms/business-form/additional-questions/additional-questions.js +2 -2
  134. package/dist/collection/components/business-forms/business-form/business-core-info/business-core-info.js +4 -4
  135. package/dist/collection/components/business-forms/business-form/business-form.js +2 -2
  136. package/dist/collection/components/business-forms/business-form/business-representative/business-representative.js +4 -4
  137. package/dist/collection/components/business-forms/business-form/legal-address-form/legal-address-form.js +3 -3
  138. package/dist/collection/components/business-forms/owner-form/identity-address/identity-address-form.js +5 -5
  139. package/dist/collection/components/business-forms/owner-form/owner-form-core.js +6 -6
  140. package/dist/collection/components/business-forms/owner-form/owner-form-inputs.js +7 -7
  141. package/dist/collection/components/business-forms/owner-form/owner-form.js +4 -4
  142. package/dist/collection/components/business-forms/payment-provisioning/additional-questions/business-additional-questions-form-step.js +4 -4
  143. package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-document-inputs.js +4 -4
  144. package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-form-inputs-canada.js +5 -5
  145. package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-form-inputs.js +5 -5
  146. package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-read-only-value.js +2 -2
  147. package/dist/collection/components/business-forms/payment-provisioning/bank-account/business-bank-account-form-step.js +23 -8
  148. package/dist/collection/components/business-forms/payment-provisioning/business-core-info/business-core-info-form-step.js +3 -3
  149. package/dist/collection/components/business-forms/payment-provisioning/business-owners/business-owners-form-step.js +35 -7
  150. package/dist/collection/components/business-forms/payment-provisioning/business-representative/business-representative-form-inputs.js +6 -6
  151. package/dist/collection/components/business-forms/payment-provisioning/business-representative/business-representative-form-step.js +2 -2
  152. package/dist/collection/components/business-forms/payment-provisioning/form-address-fields/form-address-fields.js +4 -4
  153. package/dist/collection/components/business-forms/payment-provisioning/form-control-monetary-provisioning.js +19 -11
  154. package/dist/collection/components/business-forms/payment-provisioning/legal-address-form/legal-address-form-step.js +2 -2
  155. package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-core.js +20 -8
  156. package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-form-buttons.js +7 -7
  157. package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-form-steps.js +6 -6
  158. package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning.js +3 -3
  159. package/dist/collection/components/business-forms/payment-provisioning/plaid-verification/plaid-verification.js +433 -0
  160. package/dist/collection/components/business-forms/payment-provisioning/terms-and-conditions/business-terms-conditions-form-step.js +3 -3
  161. package/dist/collection/components/business-forms/schemas/business-additional-questions-schema.js +2 -0
  162. package/dist/collection/components/business-forms/schemas/business-identity-schema.js +5 -1
  163. package/dist/collection/components/business-forms/schemas/schema-validations.js +15 -0
  164. package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +2 -2
  165. package/dist/collection/components/checkout/card-form/card-form.js +2 -2
  166. package/dist/collection/components/checkout/checkout.js +23 -4
  167. package/dist/collection/components/checkout/save-new-payment-method.js +1 -1
  168. package/dist/collection/components/checkout/saved-payment-method.js +3 -3
  169. package/dist/collection/components/checkouts-list/checkouts-list-core.js +4 -4
  170. package/dist/collection/components/checkouts-list/checkouts-list-filters.js +2 -2
  171. package/dist/collection/components/checkouts-list/checkouts-list.js +3 -3
  172. package/dist/collection/components/dispute-management/dispute-management-core.js +4 -4
  173. package/dist/collection/components/dispute-management/dispute-management.js +3 -3
  174. package/dist/collection/components/dispute-management/dispute-notification.js +5 -5
  175. package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +2 -2
  176. package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +2 -2
  177. package/dist/collection/components/dispute-management/dispute-response/customer-details.js +2 -2
  178. package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
  179. package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +4 -4
  180. package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +2 -2
  181. package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +2 -2
  182. package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +2 -2
  183. package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +2 -2
  184. package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +2 -2
  185. package/dist/collection/components/filters/table-filters-menu.js +3 -3
  186. package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +2 -2
  187. package/dist/collection/components/gross-payment-chart/gross-payment-chart.js +2 -2
  188. package/dist/collection/components/insurance/season-interruption/season-interruption-insurance.js +7 -7
  189. package/dist/collection/components/modular-checkout/modular-checkout.js +3 -3
  190. package/dist/collection/components/modular-checkout/sub-components/apple-pay.js +3 -0
  191. package/dist/collection/components/modular-checkout/sub-components/bank-account-billing-form-simple.js +1 -1
  192. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +2 -2
  193. package/dist/collection/components/modular-checkout/sub-components/card-billing-form-simple.js +1 -1
  194. package/dist/collection/components/modular-checkout/sub-components/card-form.js +2 -2
  195. package/dist/collection/components/modular-checkout/sub-components/google-pay.js +2 -2
  196. package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +6 -6
  197. package/dist/collection/components/modular-checkout/sub-components/plaid-payment-method.js +4 -51
  198. package/dist/collection/components/modular-checkout/sub-components/summary.js +1 -1
  199. package/dist/collection/components/order-terminals/order-terminals.js +4 -4
  200. package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +5 -5
  201. package/dist/collection/components/payment-details/payment-details-core.js +9 -9
  202. package/dist/collection/components/payment-details/payment-details.js +2 -2
  203. package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +3 -3
  204. package/dist/collection/components/payments-list/payments-list-core.js +3 -3
  205. package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
  206. package/dist/collection/components/payments-list/payments-list.js +3 -3
  207. package/dist/collection/components/payout-details/payout-details-core.js +5 -5
  208. package/dist/collection/components/payout-details/payout-details.js +2 -2
  209. package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +3 -3
  210. package/dist/collection/components/payouts-list/payouts-list-core.js +5 -5
  211. package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
  212. package/dist/collection/components/payouts-list/payouts-list.js +3 -3
  213. package/dist/collection/components/refund-payment/refund-payment.js +3 -3
  214. package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +3 -3
  215. package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
  216. package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +3 -3
  217. package/dist/collection/components/terminals-list/terminals-list-core.js +4 -4
  218. package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
  219. package/dist/collection/components/terminals-list/terminals-list.js +3 -3
  220. package/dist/collection/components/tokenize-payment-method/internal-tokenize-payment-method.js +1 -1
  221. package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +1 -1
  222. package/dist/collection/ui-components/custom-popper/custom-popper.js +51 -17
  223. package/dist/collection/ui-components/details/details.js +2 -2
  224. package/dist/collection/ui-components/form/form-control-checkbox.js +16 -10
  225. package/dist/collection/ui-components/form/form-control-date.js +5 -5
  226. package/dist/collection/ui-components/form/form-control-file-v2.js +16 -8
  227. package/dist/collection/ui-components/form/form-control-file.js +16 -10
  228. package/dist/collection/ui-components/form/form-control-monetary.js +5 -5
  229. package/dist/collection/ui-components/form/form-control-number-masked.js +14 -10
  230. package/dist/collection/ui-components/form/form-control-number.js +10 -8
  231. package/dist/collection/ui-components/form/form-control-radio.js +18 -12
  232. package/dist/collection/ui-components/form/form-control-select.js +6 -6
  233. package/dist/collection/ui-components/form/form-control-text.js +5 -5
  234. package/dist/collection/ui-components/form/form-control-textarea.js +19 -11
  235. package/dist/collection/ui-components/form/form-helpers/form-alert/form-alert.js +2 -2
  236. package/dist/collection/ui-components/form/form-helpers/form-control-help-text/form-control-help-text.js +2 -2
  237. package/dist/collection/ui-components/form/form-helpers/form-control-tooltip/form-control-tooltip.js +1 -1
  238. package/dist/collection/ui-components/form/hidden-input.js +1 -1
  239. package/dist/collection/ui-components/form/iframe-input.js +6 -6
  240. package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +1 -1
  241. package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +2 -2
  242. package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +1 -1
  243. package/dist/docs.json +714 -273
  244. package/dist/esm/{Api-Dln8a6No.js → Api-ohkSjyhl.js} +1 -1
  245. package/dist/esm/{Business-B5rtFhtR.js → Business-GgW1g7FQ.js} +6 -0
  246. package/dist/esm/{GooglePay-NNHE-OLJ.js → Plaid-CBrksnBN.js} +53 -2
  247. package/dist/esm/additional-questions-details_5.entry.js +3 -3
  248. package/dist/esm/{badge-DtrH25ss.js → badge-BW9VFFkp.js} +2 -2
  249. package/dist/esm/bank-account-document-form-inputs_9.entry.js +522 -0
  250. package/dist/esm/bank-account-form.entry.js +7 -7
  251. package/dist/esm/{business-additional-questions-schema-woG5-pgK.js → business-additional-questions-schema-CQ8CuEfQ.js} +5 -3
  252. package/dist/esm/business-details-core.entry.js +7 -7
  253. package/dist/esm/{business-form-options-D6s5H4RI.js → business-form-options-DamBLV7N.js} +1 -1
  254. package/dist/esm/{business-identity-schema-B7VTDF4j.js → business-identity-schema-BTyJz7M9.js} +7 -3
  255. package/dist/esm/{business.service-BrUSam2T.js → business.service-BWm7Kqs4.js} +3 -3
  256. package/dist/esm/{button-Bpf3VX8Q.js → button-DMeChykB.js} +2 -2
  257. package/dist/esm/card-form.entry.js +7 -7
  258. package/dist/esm/{check-pkg-version-c_8fDHCB.js → check-pkg-version-CioeuqLV.js} +12 -11
  259. package/dist/esm/{checkout.service-Bxt1qPaY.js → checkout.service-D4Mljqjr.js} +3 -3
  260. package/dist/esm/checkouts-list-core.entry.js +14 -14
  261. package/dist/esm/{checkouts-list-params-state-gllzDQAb.js → checkouts-list-params-state-CiGfmyWW.js} +1 -1
  262. package/dist/esm/{checkouts-table-CB4GdlcZ.js → checkouts-table-B9YTe5fJ.js} +3 -3
  263. package/dist/esm/{config-state-C2NXATwF.js → config-state-kKn89dp1.js} +1 -1
  264. package/dist/esm/{country-config-BQ4D46Lb.js → country-config-D-9YmU94.js} +1 -1
  265. package/dist/esm/custom-popper_2.entry.js +52 -21
  266. package/dist/esm/{dispute.service-DYRYxxaT.js → dispute.service-ZpqfPDC0.js} +3 -3
  267. package/dist/esm/form-alert_5.entry.js +11 -11
  268. package/dist/esm/form-control-checkbox.entry.js +11 -8
  269. package/dist/esm/form-control-date.entry.js +7 -7
  270. package/dist/esm/{form-control-error-text-BZYykCDp.js → form-control-error-text-CTQxgr7_.js} +2 -2
  271. package/dist/esm/form-control-file-v2_2.entry.js +17 -10
  272. package/dist/esm/{form-control-help-text-D-p66Yxr.js → form-control-help-text-B-aaeX6n.js} +2 -2
  273. package/dist/esm/form-control-help-text.entry.js +1 -1
  274. package/dist/esm/form-control-monetary-provisioning.entry.js +12 -8
  275. package/dist/esm/form-control-monetary.entry.js +8 -8
  276. package/dist/esm/form-control-number-masked_3.entry.js +13 -11
  277. package/dist/esm/{owner-form-core_2.entry.js → form-control-number_3.entry.js} +71 -19
  278. package/dist/esm/form-control-radio.entry.js +9 -6
  279. package/dist/esm/form-control-select_2.entry.js +11 -11
  280. package/dist/esm/{get-business-Xt7B5dSo.js → get-business-BMB2IxN_.js} +1 -1
  281. package/dist/esm/{get-payment-details-BJ1PLhJZ.js → get-payment-details-B71Qi6mF.js} +3 -3
  282. package/dist/esm/{get-subaccounts-CzGHjlUF.js → get-subaccounts-DXJdRbWg.js} +4 -4
  283. package/dist/esm/gross-payment-chart-core.entry.js +6 -6
  284. package/dist/esm/{header-1-WwkF5F9y.js → header-1-DFMANSXo.js} +2 -2
  285. package/dist/esm/{header-3-C5jS39cE.js → header-3-Ck64YtdM.js} +2 -2
  286. package/dist/esm/hidden-input_2.entry.js +10 -10
  287. package/dist/esm/index-CV0Pyo1O.js +4434 -0
  288. package/dist/esm/{index-B-fWxE5e.js → index-cDVGjRkU.js} +90 -21
  289. package/dist/esm/{input-handlers-D3y0TzH9.js → input-handlers-CzWCJ849.js} +1 -1
  290. package/dist/esm/{insurance-state-C11WKZU6.js → insurance-state-DQ3xzFpR.js} +3 -3
  291. package/dist/esm/internal-tokenize-payment-method_7.entry.js +23 -23
  292. package/dist/esm/justifi-additional-questions-form-step_9.entry.js +89 -55
  293. package/dist/esm/justifi-additional-statement_8.entry.js +10 -10
  294. package/dist/esm/justifi-apple-pay_8.entry.js +35 -105
  295. package/dist/esm/justifi-bank-account-billing-form-simple_3.entry.js +10 -10
  296. package/dist/esm/justifi-business-details.entry.js +13 -13
  297. package/dist/esm/justifi-business-form.entry.js +22 -22
  298. package/dist/esm/justifi-checkout.entry.js +15 -15
  299. package/dist/esm/justifi-checkouts-list-filters.entry.js +10 -10
  300. package/dist/esm/justifi-checkouts-list.entry.js +16 -16
  301. package/dist/esm/justifi-config-provider.entry.js +3 -3
  302. package/dist/esm/justifi-details.entry.js +4 -4
  303. package/dist/esm/justifi-dispute-management-core.entry.js +3 -3
  304. package/dist/esm/justifi-dispute-management.entry.js +11 -11
  305. package/dist/esm/justifi-dispute-notification_3.entry.js +25 -25
  306. package/dist/esm/justifi-gross-payment-chart.entry.js +11 -11
  307. package/dist/esm/justifi-order-terminals.entry.js +17 -17
  308. package/dist/esm/justifi-payment-details.entry.js +14 -14
  309. package/dist/esm/justifi-payment-provisioning-core.entry.js +23 -11
  310. package/dist/esm/justifi-payment-provisioning.entry.js +11 -11
  311. package/dist/esm/justifi-payment-transactions-list.entry.js +16 -16
  312. package/dist/esm/justifi-payments-list-filters.entry.js +7 -7
  313. package/dist/esm/justifi-payments-list.entry.js +16 -16
  314. package/dist/esm/justifi-payout-details.entry.js +12 -12
  315. package/dist/esm/justifi-payout-transactions-list.entry.js +16 -16
  316. package/dist/esm/justifi-payouts-list-filters.entry.js +7 -7
  317. package/dist/esm/justifi-payouts-list.entry.js +17 -17
  318. package/dist/esm/justifi-refund-payment.entry.js +16 -16
  319. package/dist/esm/justifi-saved-payment-method.entry.js +4 -4
  320. package/dist/esm/justifi-season-interruption-insurance.entry.js +14 -14
  321. package/dist/esm/justifi-skeleton.entry.js +5 -5
  322. package/dist/esm/justifi-terminal-orders-list-filters.entry.js +10 -10
  323. package/dist/esm/justifi-terminal-orders-list.entry.js +14 -14
  324. package/dist/esm/justifi-terminals-list-filters.entry.js +9 -9
  325. package/dist/esm/justifi-terminals-list.entry.js +16 -16
  326. package/dist/esm/justifi-tokenize-payment-method.entry.js +2 -2
  327. package/dist/esm/loader.js +3 -3
  328. package/dist/esm/{package-BzT9OxlN.js → package-CekpA_KC.js} +1 -1
  329. package/dist/esm/pagination-menu.entry.js +2 -2
  330. package/dist/esm/{parts-sA8HBfkI.js → parts-DrquDBSk.js} +1 -1
  331. package/dist/esm/payment-details-core.entry.js +20 -20
  332. package/dist/esm/payment-method-option.entry.js +4 -4
  333. package/dist/esm/payment-provisioning-loading-DU0pNyqx.js +10 -0
  334. package/dist/esm/{payment.service-BoGemgMw.js → payment.service-C2lFq1yV.js} +3 -3
  335. package/dist/esm/payments-list-core.entry.js +15 -15
  336. package/dist/esm/{payments-list-params-state-gllzDQAb.js → payments-list-params-state-CiGfmyWW.js} +1 -1
  337. package/dist/esm/{payments-status-CADg1cD0.js → payments-status-Bn-MvMcF.js} +2 -2
  338. package/dist/esm/{payments-table-C6zHWwGO.js → payments-table-CF3_zGnh.js} +3 -3
  339. package/dist/esm/payout-details-core.entry.js +13 -13
  340. package/dist/esm/{payout.service-BSG50wqN.js → payout.service-ChupMPKT.js} +3 -3
  341. package/dist/esm/payouts-list-core.entry.js +15 -15
  342. package/dist/esm/{payouts-list-params-state-gllzDQAb.js → payouts-list-params-state-CiGfmyWW.js} +1 -1
  343. package/dist/esm/{payouts-status-4VDQvaYV.js → payouts-status-ehZrz-Xx.js} +2 -2
  344. package/dist/esm/{payouts-table-BU5XbzB9.js → payouts-table-CGZJfsje.js} +3 -3
  345. package/dist/esm/plaid-icon-wJLd-2NX.js +43 -0
  346. package/dist/esm/{schema-validations-iamDi5JD.js → schema-validations-CfHWzMvr.js} +19 -4
  347. package/dist/esm/{skeleton-Dtt56Fl3.js → skeleton-D9UXuoik.js} +2 -2
  348. package/dist/esm/{spinner-DikooWuI.js → spinner-ACMfJh3a.js} +2 -2
  349. package/dist/esm/{styled-host-DhOcKWqZ.js → styled-host-D6byRazK.js} +1 -1
  350. package/dist/esm/{table-1hqe6s5m.js → table-BbMG2jg9.js} +3 -3
  351. package/dist/esm/table-filters-menu.entry.js +4 -4
  352. package/dist/esm/terminal-orders-list-core.entry.js +14 -14
  353. package/dist/esm/{terminal-orders-list-params-state-gllzDQAb.js → terminal-orders-list-params-state-CiGfmyWW.js} +1 -1
  354. package/dist/esm/{terminal-orders-table-BsVBelxB.js → terminal-orders-table-B4_RAxxx.js} +6 -6
  355. package/dist/esm/terminal-quantity-selector.entry.js +4 -4
  356. package/dist/esm/{terminal.service-YKfi6Mr9.js → terminal.service-DqibXFHt.js} +3 -3
  357. package/dist/esm/terminals-list-core.entry.js +14 -14
  358. package/dist/esm/terminals-list-params-state-CiGfmyWW.js +16 -0
  359. package/dist/esm/{terminals-table-CXJTn-0I.js → terminals-table-B-7FR4ug.js} +3 -3
  360. package/dist/esm/{utils-CgFsPVsv.js → utils-DhCv62Pi.js} +2 -2
  361. package/dist/esm/webcomponents.js +31 -4
  362. package/dist/module/Analytics.js +9 -8
  363. package/dist/module/Business.js +6 -0
  364. package/dist/module/{Refund.js → Plaid.js} +51 -1
  365. package/dist/module/additional-questions.js +1 -1
  366. package/dist/module/additional-statement.js +2 -2
  367. package/dist/module/bank-account-billing-form-simple.js +1 -1
  368. package/dist/module/bank-account-document-inputs.js +2 -2
  369. package/dist/module/bank-account-form-inputs-canada2.js +1 -1
  370. package/dist/module/bank-account-form-inputs2.js +1 -1
  371. package/dist/module/bank-account-form.js +2 -2
  372. package/dist/module/bank-account-read-only-value2.js +1 -1
  373. package/dist/module/bank-account.js +2 -2
  374. package/dist/module/business-additional-questions-form-step.js +3 -3
  375. package/dist/module/business-additional-questions-schema.js +3 -1
  376. package/dist/module/business-address-schema.js +1 -1
  377. package/dist/module/business-bank-account-form-step.js +47 -26
  378. package/dist/module/business-core-info-form-step.js +1 -1
  379. package/dist/module/business-core-info.js +2 -2
  380. package/dist/module/business-details-core2.js +1 -1
  381. package/dist/module/business-identity-schema.js +5 -1
  382. package/dist/module/business-owners-form-step.js +42 -8
  383. package/dist/module/business-representative-form-inputs.js +2 -2
  384. package/dist/module/business-representative-form-step.js +1 -1
  385. package/dist/module/business-representative.js +2 -2
  386. package/dist/module/business-terms-conditions-form-step.js +2 -2
  387. package/dist/module/business.service.js +1 -1
  388. package/dist/module/button.js +1 -1
  389. package/dist/module/cancellation-policy.js +2 -2
  390. package/dist/module/card-billing-form-simple.js +1 -1
  391. package/dist/module/card-form.js +2 -2
  392. package/dist/module/card-form2.js +2 -2
  393. package/dist/module/checkout.service.js +1 -1
  394. package/dist/module/checkout.store.js +1 -1
  395. package/dist/module/checkouts-list-core2.js +3 -3
  396. package/dist/module/custom-popper2.js +50 -17
  397. package/dist/module/customer-details.js +2 -2
  398. package/dist/module/details.js +1 -1
  399. package/dist/module/dispute-management-core.js +2 -2
  400. package/dist/module/dispute-notification.js +3 -3
  401. package/dist/module/dispute-response-actions.js +1 -1
  402. package/dist/module/dispute-response-core.js +2 -2
  403. package/dist/module/dispute-response.js +2 -2
  404. package/dist/module/duplicate-charge.js +2 -2
  405. package/dist/module/electronic-evidence.js +2 -2
  406. package/dist/module/form-address-fields.js +1 -1
  407. package/dist/module/form-control-checkbox2.js +5 -2
  408. package/dist/module/form-control-date2.js +2 -2
  409. package/dist/module/form-control-file-v22.js +4 -1
  410. package/dist/module/form-control-file2.js +5 -2
  411. package/dist/module/form-control-monetary-provisioning2.js +6 -2
  412. package/dist/module/form-control-monetary2.js +2 -2
  413. package/dist/module/form-control-number-masked2.js +4 -2
  414. package/dist/module/form-control-number.js +1 -84
  415. package/dist/module/form-control-number2.js +87 -0
  416. package/dist/module/form-control-radio2.js +5 -2
  417. package/dist/module/form-control-select2.js +2 -2
  418. package/dist/module/form-control-text2.js +2 -2
  419. package/dist/module/form-control-textarea2.js +6 -2
  420. package/dist/module/get-business.js +1 -1
  421. package/dist/module/get-payment-details.js +1 -1
  422. package/dist/module/get-payout-csv.js +1 -1
  423. package/dist/module/get-subaccounts.js +1 -1
  424. package/dist/module/google-pay.js +3 -3
  425. package/dist/module/gross-payment-chart-core2.js +1 -1
  426. package/dist/module/hidden-input2.js +1 -1
  427. package/dist/module/identity-address-form.js +1 -1
  428. package/dist/module/iframe-input2.js +3 -3
  429. package/dist/module/index2.js +90 -21
  430. package/dist/module/internal-tokenize-payment-method2.js +2 -2
  431. package/dist/module/justifi-business-details.js +1 -1
  432. package/dist/module/justifi-business-form.js +1 -1
  433. package/dist/module/justifi-button2.js +1 -1
  434. package/dist/module/justifi-checkout.js +3 -3
  435. package/dist/module/justifi-checkouts-list-filters.js +4 -4
  436. package/dist/module/justifi-checkouts-list.js +2 -2
  437. package/dist/module/justifi-dispute-management.js +2 -2
  438. package/dist/module/justifi-gross-payment-chart.js +1 -1
  439. package/dist/module/justifi-header2.js +1 -1
  440. package/dist/module/justifi-order-terminals.js +3 -3
  441. package/dist/module/justifi-payment-details.js +1 -1
  442. package/dist/module/justifi-payment-provisioning.js +74 -62
  443. package/dist/module/justifi-payment-transactions-list.js +3 -3
  444. package/dist/module/justifi-payments-list-filters.js +3 -3
  445. package/dist/module/justifi-payments-list.js +2 -2
  446. package/dist/module/justifi-payout-details.js +1 -1
  447. package/dist/module/justifi-payout-transactions-list.js +3 -3
  448. package/dist/module/justifi-payouts-list-filters.js +3 -3
  449. package/dist/module/justifi-payouts-list.js +2 -2
  450. package/dist/module/justifi-refund-payment.js +1 -1
  451. package/dist/module/justifi-saved-payment-method.js +1 -1
  452. package/dist/module/justifi-season-interruption-insurance.js +1 -1
  453. package/dist/module/justifi-skeleton.js +1 -1
  454. package/dist/module/justifi-terminal-orders-list-filters.js +4 -4
  455. package/dist/module/justifi-terminal-orders-list.js +2 -2
  456. package/dist/module/justifi-terminals-list-filters.js +3 -3
  457. package/dist/module/justifi-terminals-list.js +2 -2
  458. package/dist/module/justifi-tokenize-payment-method.js +1 -1
  459. package/dist/module/legal-address-form-step.js +1 -1
  460. package/dist/module/legal-address-form.js +1 -1
  461. package/dist/module/modular-checkout.js +3 -3
  462. package/dist/module/owner-form-core2.js +11 -5
  463. package/dist/module/owner-form-inputs2.js +13 -7
  464. package/dist/module/owner-form.js +11 -5
  465. package/dist/module/package.js +1 -1
  466. package/dist/module/parts.js +1 -1
  467. package/dist/module/payment-details-core2.js +9 -9
  468. package/dist/module/payment-method-option.js +1 -1
  469. package/dist/module/payment-provisioning-actions.js +1 -1
  470. package/dist/module/payment-provisioning-core.js +86 -62
  471. package/dist/module/payment-provisioning-form-buttons.js +1 -1
  472. package/dist/module/payment-provisioning-form-steps.js +67 -55
  473. package/dist/module/payment.service.js +1 -1
  474. package/dist/module/payments-list-core2.js +3 -3
  475. package/dist/module/payout-details-core2.js +3 -3
  476. package/dist/module/payout.service.js +1 -1
  477. package/dist/module/payouts-list-core2.js +3 -3
  478. package/dist/module/plaid-icon.js +3 -0
  479. package/dist/module/plaid-payment-method.js +3 -53
  480. package/dist/module/plaid-verification.d.ts +11 -0
  481. package/dist/module/plaid-verification.js +6 -0
  482. package/dist/module/plaid-verification2.js +358 -0
  483. package/dist/module/plaid.service.js +14 -1
  484. package/dist/module/product-or-service.js +2 -2
  485. package/dist/module/refund-policy.js +2 -2
  486. package/dist/module/save-new-payment-method.js +1 -1
  487. package/dist/module/schema-validations.js +16 -1
  488. package/dist/module/shipping-details.js +2 -2
  489. package/dist/module/summary.js +1 -1
  490. package/dist/module/table-filters-menu2.js +2 -2
  491. package/dist/module/table.js +1 -1
  492. package/dist/module/terminal-orders-list-core2.js +3 -3
  493. package/dist/module/terminal-quantity-selector2.js +2 -2
  494. package/dist/module/terminal.service.js +1 -1
  495. package/dist/module/terminals-list-core2.js +3 -3
  496. package/dist/module/utils4.js +1 -1
  497. package/dist/types/api/Analytics.d.ts +1 -0
  498. package/dist/types/api/BankAccount.d.ts +1 -0
  499. package/dist/types/api/Business.d.ts +6 -0
  500. package/dist/types/api/Identity.d.ts +4 -0
  501. package/dist/types/api/Plaid.d.ts +54 -0
  502. package/dist/types/api/index.d.ts +1 -0
  503. package/dist/types/api/services/plaid.service.d.ts +8 -0
  504. package/dist/types/components/business-forms/owner-form/owner-form-core.d.ts +2 -0
  505. package/dist/types/components/business-forms/payment-provisioning/additional-questions/business-additional-questions-form-step.d.ts +1 -0
  506. package/dist/types/components/business-forms/payment-provisioning/bank-account/business-bank-account-form-step.d.ts +2 -0
  507. package/dist/types/components/business-forms/payment-provisioning/business-owners/business-owners-form-step.d.ts +4 -0
  508. package/dist/types/components/business-forms/payment-provisioning/form-control-monetary-provisioning.d.ts +3 -3
  509. package/dist/types/components/business-forms/payment-provisioning/payment-provisioning-core.d.ts +1 -0
  510. package/dist/types/components/business-forms/payment-provisioning/plaid-verification/plaid-verification.d.ts +36 -0
  511. package/dist/types/components/business-forms/schemas/business-additional-questions-schema.d.ts +2 -0
  512. package/dist/types/components/business-forms/schemas/business-form-schema.d.ts +12 -0
  513. package/dist/types/components/business-forms/schemas/business-identity-schema.d.ts +10 -0
  514. package/dist/types/components/business-forms/schemas/schema-validations.d.ts +1 -0
  515. package/dist/types/components/checkout/checkout.d.ts +19 -0
  516. package/dist/types/components/modular-checkout/sub-components/apple-pay.d.ts +3 -0
  517. package/dist/types/components/modular-checkout/sub-components/plaid-payment-method.d.ts +1 -25
  518. package/dist/types/components.d.ts +416 -239
  519. package/dist/types/ui-components/custom-popper/custom-popper.d.ts +4 -0
  520. package/dist/types/ui-components/form/form-control-checkbox.d.ts +2 -2
  521. package/dist/types/ui-components/form/form-control-file-v2.d.ts +2 -2
  522. package/dist/types/ui-components/form/form-control-file.d.ts +2 -2
  523. package/dist/types/ui-components/form/form-control-number-masked.d.ts +2 -2
  524. package/dist/types/ui-components/form/form-control-number.d.ts +1 -1
  525. package/dist/types/ui-components/form/form-control-radio.d.ts +3 -3
  526. package/dist/types/ui-components/form/form-control-textarea.d.ts +2 -2
  527. package/dist/webcomponents/{p-Dit3fZpU.js → p--cI8fPJx.js} +1 -1
  528. package/dist/webcomponents/p-02f360c5.entry.js +1 -0
  529. package/dist/webcomponents/{p-36a0af30.entry.js → p-0467df5d.entry.js} +1 -1
  530. package/dist/webcomponents/p-073ca03f.entry.js +1 -0
  531. package/dist/webcomponents/p-0eb97b54.entry.js +1 -0
  532. package/dist/webcomponents/p-0f6fa1c0.entry.js +1 -0
  533. package/dist/webcomponents/p-0fcb7ebb.entry.js +1 -0
  534. package/dist/webcomponents/p-110bec2e.entry.js +1 -0
  535. package/dist/webcomponents/{p-d0c4b0ea.entry.js → p-172b0c96.entry.js} +1 -1
  536. package/dist/webcomponents/{p-725319f3.entry.js → p-1ec3d1e7.entry.js} +1 -1
  537. package/dist/webcomponents/p-20cab5fe.entry.js +1 -0
  538. package/dist/webcomponents/p-238ba771.entry.js +1 -0
  539. package/dist/webcomponents/p-2454c140.entry.js +1 -0
  540. package/dist/webcomponents/p-25666afe.entry.js +1 -0
  541. package/dist/webcomponents/p-26430bfe.entry.js +1 -0
  542. package/dist/webcomponents/p-265a7cb3.entry.js +1 -0
  543. package/dist/webcomponents/p-2e7143b8.entry.js +1 -0
  544. package/dist/webcomponents/p-32fac30b.entry.js +1 -0
  545. package/dist/webcomponents/p-33ab9174.entry.js +1 -0
  546. package/dist/webcomponents/p-393c9065.entry.js +1 -0
  547. package/dist/webcomponents/p-3a254390.entry.js +1 -0
  548. package/dist/webcomponents/p-493e73a9.entry.js +1 -0
  549. package/dist/webcomponents/p-4a802f82.entry.js +1 -0
  550. package/dist/webcomponents/p-4b928d2e.entry.js +1 -0
  551. package/dist/webcomponents/p-4d3e4e56.entry.js +1 -0
  552. package/dist/webcomponents/p-50cc771a.entry.js +1 -0
  553. package/dist/webcomponents/p-55e63bdd.entry.js +1 -0
  554. package/dist/webcomponents/p-5ae3401d.entry.js +1 -0
  555. package/dist/webcomponents/p-65f4681c.entry.js +1 -0
  556. package/dist/webcomponents/p-7068c2ad.entry.js +1 -0
  557. package/dist/webcomponents/p-785e8ef7.entry.js +1 -0
  558. package/dist/webcomponents/{p-897b794b.entry.js → p-7b4e9ae8.entry.js} +2 -2
  559. package/dist/webcomponents/{p-1a327b0e.entry.js → p-7fdfc2c8.entry.js} +1 -1
  560. package/dist/webcomponents/p-81bbd944.entry.js +1 -0
  561. package/dist/webcomponents/p-8ac883e4.entry.js +1 -0
  562. package/dist/webcomponents/p-8e6f2dc8.entry.js +1 -0
  563. package/dist/webcomponents/p-8ed4f485.entry.js +1 -0
  564. package/dist/webcomponents/p-922ddfb4.entry.js +1 -0
  565. package/dist/webcomponents/p-9643fe36.entry.js +1 -0
  566. package/dist/webcomponents/{p-20af8597.entry.js → p-99065f37.entry.js} +1 -1
  567. package/dist/webcomponents/p-9ce5fcb6.entry.js +1 -0
  568. package/dist/webcomponents/p-9d844936.entry.js +1 -0
  569. package/dist/webcomponents/p-AMVhBsGv.js +1 -0
  570. package/dist/webcomponents/{p-DfKxeSrC.js → p-B1AMrMly.js} +1 -1
  571. package/dist/webcomponents/p-B8CPGGs6.js +1 -0
  572. package/dist/webcomponents/p-BPTtWj7E.js +1 -0
  573. package/dist/webcomponents/p-BRPbLfCN.js +1 -0
  574. package/dist/webcomponents/p-BZ4YUsyP.js +1 -0
  575. package/dist/webcomponents/{p-CPpUGsw5.js → p-BZbvHgMz.js} +1 -1
  576. package/dist/webcomponents/{p-CV8xqdt6.js → p-Bhk8tHxs.js} +1 -1
  577. package/dist/webcomponents/{p-B4xdk4mG.js → p-Bj9n56jK.js} +1 -1
  578. package/dist/webcomponents/p-BqL4QuAa.js +1 -0
  579. package/dist/webcomponents/{p-BP2sTIQV.js → p-BqNNwq6C.js} +1 -1
  580. package/dist/webcomponents/p-By-Mu1IX.js +1 -0
  581. package/dist/webcomponents/p-C0dMwnDO.js +1 -0
  582. package/dist/webcomponents/p-C3E-JbVM.js +1 -0
  583. package/dist/webcomponents/p-C3RQHKL5.js +1 -0
  584. package/dist/webcomponents/{p-BMJe4lzg.js → p-CAZzU98o.js} +1 -1
  585. package/dist/webcomponents/p-CGKWIBVk.js +1 -0
  586. package/dist/webcomponents/{p-DUmUUj9r.js → p-COcg4_A3.js} +1 -1
  587. package/dist/webcomponents/{p-C2Senazf.js → p-CQ36pja3.js} +1 -1
  588. package/dist/webcomponents/p-CV0Pyo1O.js +2 -0
  589. package/dist/webcomponents/{p-Dlrq1iZf.js → p-CWyW004b.js} +1 -1
  590. package/dist/webcomponents/p-CekpA_KC.js +1 -0
  591. package/dist/webcomponents/p-CkYB1zGe.js +1 -0
  592. package/dist/webcomponents/p-CpGEMRkH.js +1 -0
  593. package/dist/webcomponents/{p-CBbwdoSa.js → p-CruQSM5j.js} +1 -1
  594. package/dist/webcomponents/p-D-07jgNC.js +1 -0
  595. package/dist/webcomponents/p-D4EBPNuU.js +1 -0
  596. package/dist/webcomponents/p-D8GTwl9v.js +1 -0
  597. package/dist/webcomponents/{p-C77ElQ41.js → p-DCwnBXF7.js} +1 -1
  598. package/dist/webcomponents/p-DKemQxaE.js +1 -0
  599. package/dist/webcomponents/p-DOnVHzNq.js +1 -0
  600. package/dist/webcomponents/{p-tGDdRx0W.js → p-DVJaoI_m.js} +1 -1
  601. package/dist/webcomponents/p-DaZF_q9T.js +1 -0
  602. package/dist/webcomponents/p-Dm07nLGs.js +1 -0
  603. package/dist/webcomponents/p-DrquDBSk.js +1 -0
  604. package/dist/webcomponents/p-Dw63wyhO.js +1 -0
  605. package/dist/webcomponents/p-GgW1g7FQ.js +1 -0
  606. package/dist/webcomponents/{p-D6bKoyRc.js → p-JO-3z7ao.js} +1 -1
  607. package/dist/webcomponents/p-MVBgKFOv.js +1 -0
  608. package/dist/webcomponents/p-Y-EhaLdV.js +1 -0
  609. package/dist/webcomponents/{p-W9WWoLzT.js → p-YYXsr-bI.js} +1 -1
  610. package/dist/webcomponents/p-a20bddd2.entry.js +1 -0
  611. package/dist/webcomponents/p-a3510078.entry.js +1 -0
  612. package/dist/webcomponents/p-a4834220.entry.js +1 -0
  613. package/dist/webcomponents/p-a9ecaf0f.entry.js +1 -0
  614. package/dist/webcomponents/p-aa02e3d7.entry.js +1 -0
  615. package/dist/webcomponents/p-adbe280f.entry.js +1 -0
  616. package/dist/webcomponents/p-af11ac6a.entry.js +1 -0
  617. package/dist/webcomponents/p-bbffb17f.entry.js +1 -0
  618. package/dist/webcomponents/p-c0829d61.entry.js +1 -0
  619. package/dist/webcomponents/p-c2db5db6.entry.js +1 -0
  620. package/dist/webcomponents/{p-f37f3e94.entry.js → p-c7c79332.entry.js} +1 -1
  621. package/dist/webcomponents/p-c90f7ed6.entry.js +1 -0
  622. package/dist/webcomponents/p-ca8d78af.entry.js +1 -0
  623. package/dist/webcomponents/p-d4535236.entry.js +1 -0
  624. package/dist/webcomponents/p-d5827cb2.entry.js +1 -0
  625. package/dist/webcomponents/p-d7fa8461.entry.js +1 -0
  626. package/dist/webcomponents/p-dff12534.entry.js +1 -0
  627. package/dist/webcomponents/p-e54cdb00.entry.js +1 -0
  628. package/dist/webcomponents/p-e926be0d.entry.js +1 -0
  629. package/dist/webcomponents/p-ed9db5b2.entry.js +1 -0
  630. package/dist/webcomponents/p-f1e012f6.entry.js +1 -0
  631. package/dist/webcomponents/p-f1f0f100.entry.js +1 -0
  632. package/dist/webcomponents/p-f5b7c322.entry.js +1 -0
  633. package/dist/webcomponents/p-f9475bb0.entry.js +1 -0
  634. package/dist/webcomponents/p-ff1cff1d.entry.js +1 -0
  635. package/dist/webcomponents/{p-sCHf--Vc.js → p-g0kDRH6Z.js} +1 -1
  636. package/dist/webcomponents/p-m_Ly-YPk.js +1 -0
  637. package/dist/webcomponents/p-sPEyLX4E.js +1 -0
  638. package/dist/webcomponents/p-wSi5d4-j.js +1 -0
  639. package/dist/webcomponents/p-wqq-X93m.js +1 -0
  640. package/dist/webcomponents/{p-yyedWKWX.js → p-y8av3w9x.js} +1 -1
  641. package/dist/webcomponents/p-ygekUw3Q.js +1 -0
  642. package/dist/webcomponents/p-ztF3Y786.js +1 -0
  643. package/dist/webcomponents/webcomponents.esm.js +1 -1
  644. package/package.json +9 -12
  645. package/dist/cjs/bank-account-document-form-inputs_8.cjs.entry.js +0 -207
  646. package/dist/cjs/form-control-number.cjs.entry.js +0 -58
  647. package/dist/cjs/index-BhI7cJcE.js +0 -1891
  648. package/dist/cjs/terminals-list-params-state-DfZySwaC.js +0 -22
  649. package/dist/esm/bank-account-document-form-inputs_8.entry.js +0 -198
  650. package/dist/esm/form-control-number.entry.js +0 -56
  651. package/dist/esm/index-DwYM91AU.js +0 -1879
  652. package/dist/esm/terminals-list-params-state-gllzDQAb.js +0 -16
  653. package/dist/webcomponents/p-016b3e4c.entry.js +0 -1
  654. package/dist/webcomponents/p-035a4adc.entry.js +0 -1
  655. package/dist/webcomponents/p-06cae9e2.entry.js +0 -1
  656. package/dist/webcomponents/p-06f81525.entry.js +0 -1
  657. package/dist/webcomponents/p-0935600b.entry.js +0 -1
  658. package/dist/webcomponents/p-0ab9a3ae.entry.js +0 -1
  659. package/dist/webcomponents/p-0b7c4ed5.entry.js +0 -1
  660. package/dist/webcomponents/p-0bb616fc.entry.js +0 -1
  661. package/dist/webcomponents/p-11wdbrqX.js +0 -1
  662. package/dist/webcomponents/p-138ada4a.entry.js +0 -1
  663. package/dist/webcomponents/p-148d3327.entry.js +0 -1
  664. package/dist/webcomponents/p-1575ca68.entry.js +0 -1
  665. package/dist/webcomponents/p-1e761d96.entry.js +0 -1
  666. package/dist/webcomponents/p-20e85114.entry.js +0 -1
  667. package/dist/webcomponents/p-2cb9edad.entry.js +0 -1
  668. package/dist/webcomponents/p-2d4a2d26.entry.js +0 -1
  669. package/dist/webcomponents/p-368b37ad.entry.js +0 -1
  670. package/dist/webcomponents/p-3a3935a3.entry.js +0 -1
  671. package/dist/webcomponents/p-3f14d0c4.entry.js +0 -1
  672. package/dist/webcomponents/p-4d2589b2.entry.js +0 -1
  673. package/dist/webcomponents/p-511e80a4.entry.js +0 -1
  674. package/dist/webcomponents/p-5996879d.entry.js +0 -1
  675. package/dist/webcomponents/p-5a748e49.entry.js +0 -1
  676. package/dist/webcomponents/p-5c6727ae.entry.js +0 -1
  677. package/dist/webcomponents/p-622af881.entry.js +0 -1
  678. package/dist/webcomponents/p-6454626a.entry.js +0 -1
  679. package/dist/webcomponents/p-64ebff16.entry.js +0 -1
  680. package/dist/webcomponents/p-66713269.entry.js +0 -1
  681. package/dist/webcomponents/p-679b36b5.entry.js +0 -1
  682. package/dist/webcomponents/p-71577fa1.entry.js +0 -1
  683. package/dist/webcomponents/p-77754a65.entry.js +0 -1
  684. package/dist/webcomponents/p-7ec4838f.entry.js +0 -1
  685. package/dist/webcomponents/p-88a8741b.entry.js +0 -1
  686. package/dist/webcomponents/p-899b981b.entry.js +0 -1
  687. package/dist/webcomponents/p-8c4b502d.entry.js +0 -1
  688. package/dist/webcomponents/p-8df30672.entry.js +0 -1
  689. package/dist/webcomponents/p-911b3d63.entry.js +0 -1
  690. package/dist/webcomponents/p-97b8bf5c.entry.js +0 -1
  691. package/dist/webcomponents/p-9b74a642.entry.js +0 -1
  692. package/dist/webcomponents/p-9b8aee30.entry.js +0 -1
  693. package/dist/webcomponents/p-9e94c9ef.entry.js +0 -1
  694. package/dist/webcomponents/p-B5rtFhtR.js +0 -1
  695. package/dist/webcomponents/p-BOqOio4U.js +0 -1
  696. package/dist/webcomponents/p-BUsqF4-J.js +0 -1
  697. package/dist/webcomponents/p-BYsgavgS.js +0 -1
  698. package/dist/webcomponents/p-BhqSAzpT.js +0 -1
  699. package/dist/webcomponents/p-BrRsgB8S.js +0 -1
  700. package/dist/webcomponents/p-BzT9OxlN.js +0 -1
  701. package/dist/webcomponents/p-C9VmfRis.js +0 -1
  702. package/dist/webcomponents/p-CCxsFwC4.js +0 -1
  703. package/dist/webcomponents/p-CK_XkZku.js +0 -1
  704. package/dist/webcomponents/p-CQGIjIgZ.js +0 -1
  705. package/dist/webcomponents/p-CZ3F1ZAT.js +0 -1
  706. package/dist/webcomponents/p-CgiDds_u.js +0 -1
  707. package/dist/webcomponents/p-CsgUIrv8.js +0 -1
  708. package/dist/webcomponents/p-D032AB34.js +0 -1
  709. package/dist/webcomponents/p-DATDsXcA.js +0 -1
  710. package/dist/webcomponents/p-DGGjRqDa.js +0 -1
  711. package/dist/webcomponents/p-DKGn-ILd.js +0 -1
  712. package/dist/webcomponents/p-DOcRWTul.js +0 -1
  713. package/dist/webcomponents/p-DY_3dcgR.js +0 -1
  714. package/dist/webcomponents/p-DdJYXOQX.js +0 -1
  715. package/dist/webcomponents/p-DmdEjScI.js +0 -1
  716. package/dist/webcomponents/p-DwYM91AU.js +0 -2
  717. package/dist/webcomponents/p-RTAZ4tdd.js +0 -1
  718. package/dist/webcomponents/p-Ty7R7tsw.js +0 -1
  719. package/dist/webcomponents/p-U3nU15el.js +0 -1
  720. package/dist/webcomponents/p-Uqevvbqm.js +0 -1
  721. package/dist/webcomponents/p-VRubcA-q.js +0 -1
  722. package/dist/webcomponents/p-a0b4c42b.entry.js +0 -1
  723. package/dist/webcomponents/p-af7c219d.entry.js +0 -1
  724. package/dist/webcomponents/p-b0f0d53c.entry.js +0 -1
  725. package/dist/webcomponents/p-b752c5bc.entry.js +0 -1
  726. package/dist/webcomponents/p-bbff6196.entry.js +0 -1
  727. package/dist/webcomponents/p-c0c36187.entry.js +0 -1
  728. package/dist/webcomponents/p-c920dc54.entry.js +0 -1
  729. package/dist/webcomponents/p-cdf1e61c.entry.js +0 -1
  730. package/dist/webcomponents/p-d077569e.entry.js +0 -1
  731. package/dist/webcomponents/p-d7b1b7b5.entry.js +0 -1
  732. package/dist/webcomponents/p-dc6c9c79.entry.js +0 -1
  733. package/dist/webcomponents/p-e4335938.entry.js +0 -1
  734. package/dist/webcomponents/p-e805b011.entry.js +0 -1
  735. package/dist/webcomponents/p-ecbc83bf.entry.js +0 -1
  736. package/dist/webcomponents/p-f30c939f.entry.js +0 -1
  737. package/dist/webcomponents/p-f56d7b4c.entry.js +0 -1
  738. package/dist/webcomponents/p-f99403d8.entry.js +0 -1
  739. package/dist/webcomponents/p-fb644da6.entry.js +0 -1
  740. package/dist/webcomponents/p-fc4b27ec.entry.js +0 -1
  741. package/dist/webcomponents/p-fe43449c.entry.js +0 -1
  742. package/dist/webcomponents/p-giyZ3C4E.js +0 -1
  743. package/dist/webcomponents/p-sA8HBfkI.js +0 -1
  744. package/docs/.eslintrc.cjs +0 -17
  745. package/docs/changelog/index.mdx +0 -17
  746. package/docs/entities/businessdetails/index.mdx +0 -143
  747. package/docs/entities/businessform/index.mdx +0 -241
  748. package/docs/entities/index.mdx +0 -19
  749. package/docs/entities/payment-provisioning/index.mdx +0 -128
  750. package/docs/frameworks/angular/index.mdx +0 -112
  751. package/docs/frameworks/index.mdx +0 -18
  752. package/docs/frameworks/react/index.mdx +0 -125
  753. package/docs/frameworks/vue/index.mdx +0 -102
  754. package/docs/helpers/PartsTable.js +0 -50
  755. package/docs/helpers/PropsTable.js +0 -56
  756. package/docs/helpers/index.ts +0 -3
  757. package/docs/helpers/version.js +0 -32
  758. package/docs/introduction/index.mdx +0 -125
  759. package/docs/merchant-tools/checkouts-list/index.mdx +0 -97
  760. package/docs/merchant-tools/gross-payments-chart/index.mdx +0 -83
  761. package/docs/merchant-tools/index.mdx +0 -25
  762. package/docs/merchant-tools/order-terminals/index.mdx +0 -84
  763. package/docs/merchant-tools/payment-details/index.mdx +0 -132
  764. package/docs/merchant-tools/payment-transactions-list/index.mdx +0 -85
  765. package/docs/merchant-tools/payments-list/index.mdx +0 -109
  766. package/docs/merchant-tools/payout-details/index.mdx +0 -84
  767. package/docs/merchant-tools/payout-transactions-list/index.mdx +0 -84
  768. package/docs/merchant-tools/payouts-list/index.mdx +0 -92
  769. package/docs/merchant-tools/terminal-orders-list/index.mdx +0 -85
  770. package/docs/merchant-tools/terminals-list/index.mdx +0 -93
  771. package/docs/modular-checkout/complete-examples/index.mdx +0 -20
  772. package/docs/modular-checkout/index.mdx +0 -20
  773. package/docs/modular-checkout/introduction/index.mdx +0 -102
  774. package/docs/modular-checkout/sub-components/apple-pay.mdx +0 -106
  775. package/docs/modular-checkout/sub-components/bank-account-form.mdx +0 -167
  776. package/docs/modular-checkout/sub-components/card-form.mdx +0 -178
  777. package/docs/modular-checkout/sub-components/index.mdx +0 -23
  778. package/docs/modular-checkout/sub-components/payment-method-options.mdx +0 -87
  779. package/docs/modular-checkout/sub-components/plaid-payment-method.mdx +0 -158
  780. package/docs/modular-checkout/sub-components/saved-payment-methods.mdx +0 -183
  781. package/docs/modular-checkout/sub-components/season-interruption-insurance.mdx +0 -221
  782. package/docs/modular-checkout/sub-components/sezzle-payment-method.mdx +0 -183
  783. package/docs/modular-checkout/sub-components/summary.mdx +0 -111
  784. package/docs/payment-facilitation/dispute-management/index.mdx +0 -99
  785. package/docs/payment-facilitation/index.mdx +0 -21
  786. package/docs/payment-facilitation/refund-payment/index.mdx +0 -241
  787. package/docs/payment-facilitation/tokenize-payment-method/index.mdx +0 -350
  788. package/docs/payment-facilitation/unified-fintech-checkout/342/204/242/index.mdx +0 -150
@@ -0,0 +1,433 @@
1
+ import { h } from "@stencil/core";
2
+ import { Button, StyledHost } from "../../../../ui-components";
3
+ import { PlaidService } from "../../../../api/services/plaid.service";
4
+ import { ComponentErrorSeverity } from "../../../../api/ComponentError";
5
+ import { PlaidErrorCodes, PLAID_ERROR_MESSAGES, PLAID_ERROR_SEVERITY, } from "../../../../api/Plaid";
6
+ import plaidLogoSvg from "../../../../assets/plaid-icon.svg";
7
+ import { buttonSecondary } from "../../../../styles/parts";
8
+ export class PlaidVerification {
9
+ constructor() {
10
+ this.linkToken = null;
11
+ this.linkTokenId = null;
12
+ this.plaidLink = null;
13
+ this.isAuthenticating = false;
14
+ this.isSuccess = false;
15
+ this.error = null;
16
+ this.isLoading = false;
17
+ this.plaidService = new PlaidService();
18
+ this.abortController = null;
19
+ this.timeoutId = null;
20
+ this.initializePlaidLink = async () => {
21
+ try {
22
+ // Check if Plaid is available globally
23
+ if (typeof window.Plaid === 'undefined') {
24
+ this.handleError({
25
+ code: PlaidErrorCodes.PLAID_SDK_LOAD_FAILED,
26
+ message: PLAID_ERROR_MESSAGES[PlaidErrorCodes.PLAID_SDK_LOAD_FAILED],
27
+ severity: PLAID_ERROR_SEVERITY[PlaidErrorCodes.PLAID_SDK_LOAD_FAILED],
28
+ retryable: true,
29
+ userAction: 'Refresh the page and try again',
30
+ });
31
+ return;
32
+ }
33
+ // Get link token from backend
34
+ await this.getLinkToken();
35
+ if (!this.linkToken) {
36
+ this.handleError({
37
+ code: PlaidErrorCodes.PLAID_LINK_TOKEN_FAILED,
38
+ message: PLAID_ERROR_MESSAGES[PlaidErrorCodes.PLAID_LINK_TOKEN_FAILED],
39
+ severity: PLAID_ERROR_SEVERITY[PlaidErrorCodes.PLAID_LINK_TOKEN_FAILED],
40
+ retryable: true,
41
+ userAction: 'Click to try again',
42
+ });
43
+ return;
44
+ }
45
+ // Initialize Plaid Link
46
+ const Plaid = window.Plaid;
47
+ this.plaidLink = Plaid.create({
48
+ token: this.linkToken,
49
+ onSuccess: this.handlePlaidSuccess,
50
+ onExit: this.handlePlaidExit,
51
+ onEvent: this.handlePlaidEvent,
52
+ onLoad: this.handlePlaidLoad,
53
+ });
54
+ }
55
+ catch (error) {
56
+ this.handleError({
57
+ code: PlaidErrorCodes.PLAID_LINK_INIT_FAILED,
58
+ message: PLAID_ERROR_MESSAGES[PlaidErrorCodes.PLAID_LINK_INIT_FAILED],
59
+ severity: PLAID_ERROR_SEVERITY[PlaidErrorCodes.PLAID_LINK_INIT_FAILED],
60
+ originalError: error,
61
+ retryable: true,
62
+ userAction: 'Click to try again',
63
+ });
64
+ }
65
+ };
66
+ this.getLinkToken = async () => {
67
+ var _a, _b, _c, _d;
68
+ try {
69
+ if (!this.authToken || !this.accountId) {
70
+ this.handleError({
71
+ code: PlaidErrorCodes.PLAID_LINK_TOKEN_FAILED,
72
+ message: 'Missing authentication. Please provide authToken and accountId.',
73
+ severity: ComponentErrorSeverity.ERROR,
74
+ retryable: false,
75
+ userAction: 'Provide required props',
76
+ });
77
+ return;
78
+ }
79
+ // Create abort controller for timeout handling
80
+ this.abortController = new AbortController();
81
+ // Set timeout for the request
82
+ this.timeoutId = setTimeout(() => {
83
+ var _a;
84
+ (_a = this.abortController) === null || _a === void 0 ? void 0 : _a.abort();
85
+ }, 30000); // 30 second timeout
86
+ const response = await this.plaidService.getLinkTokenForVerification(this.authToken, this.businessId, this.abortController.signal);
87
+ // Clear timeout
88
+ if (this.timeoutId) {
89
+ clearTimeout(this.timeoutId);
90
+ this.timeoutId = null;
91
+ }
92
+ if (response.error) {
93
+ const errorMessage = typeof response.error === 'string'
94
+ ? response.error
95
+ : response.error.message || 'Failed to get link token';
96
+ throw new Error(errorMessage);
97
+ }
98
+ this.linkToken = response.data.link_token;
99
+ this.linkTokenId = response.data.id;
100
+ }
101
+ catch (error) {
102
+ // Clear timeout
103
+ if (this.timeoutId) {
104
+ clearTimeout(this.timeoutId);
105
+ this.timeoutId = null;
106
+ }
107
+ let errorCode = PlaidErrorCodes.PLAID_LINK_TOKEN_FAILED;
108
+ let message = PLAID_ERROR_MESSAGES[errorCode];
109
+ let retryable = true;
110
+ // Handle specific error types
111
+ if (error.name === 'AbortError') {
112
+ errorCode = PlaidErrorCodes.PLAID_TIMEOUT;
113
+ message = PLAID_ERROR_MESSAGES[errorCode];
114
+ retryable = true;
115
+ }
116
+ else if (((_a = error.message) === null || _a === void 0 ? void 0 : _a.includes('network')) || ((_b = error.message) === null || _b === void 0 ? void 0 : _b.includes('fetch'))) {
117
+ errorCode = PlaidErrorCodes.PLAID_NETWORK_ERROR;
118
+ message = PLAID_ERROR_MESSAGES[errorCode];
119
+ retryable = true;
120
+ }
121
+ else if (((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('401')) || ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('unauthorized'))) {
122
+ errorCode = PlaidErrorCodes.PLAID_INVALID_CREDENTIALS;
123
+ message = 'Authentication failed. Please check your credentials.';
124
+ retryable = false;
125
+ }
126
+ this.handleError({
127
+ code: errorCode,
128
+ message: message,
129
+ severity: PLAID_ERROR_SEVERITY[errorCode],
130
+ originalError: error,
131
+ retryable,
132
+ userAction: retryable ? 'Click to try again' : 'Check your credentials',
133
+ });
134
+ }
135
+ };
136
+ this.openPlaidLink = () => {
137
+ if (this.plaidLink && this.linkToken) {
138
+ this.isAuthenticating = true;
139
+ this.clearError();
140
+ this.plaidLink.open();
141
+ }
142
+ };
143
+ this.handlePlaidSuccess = async (publicToken, _metadata) => {
144
+ var _a;
145
+ this.isAuthenticating = false;
146
+ this.isLoading = true;
147
+ this.clearError();
148
+ try {
149
+ // Send publicToken to backend
150
+ const response = await this.plaidService.postPlaidVerifiedBankAccountData(this.authToken, this.businessId, { public_token: publicToken, link_token_id: this.linkTokenId }, (_a = this.abortController) === null || _a === void 0 ? void 0 : _a.signal);
151
+ if (response.error) {
152
+ const errorMessage = typeof response.error === 'string'
153
+ ? response.error
154
+ : response.error.message || 'Failed to verify bank account';
155
+ throw new Error(errorMessage);
156
+ }
157
+ // Success - display success message
158
+ this.isSuccess = true;
159
+ this.isLoading = false;
160
+ // Emit success event
161
+ this.plaidVerificationSuccess.emit({ publicToken, bankAccount: response.data });
162
+ }
163
+ catch (error) {
164
+ this.isLoading = false;
165
+ this.handleError({
166
+ code: PlaidErrorCodes.PLAID_AUTHENTICATION_FAILED,
167
+ message: (error === null || error === void 0 ? void 0 : error.message) || 'Failed to verify bank account',
168
+ severity: PLAID_ERROR_SEVERITY[PlaidErrorCodes.PLAID_AUTHENTICATION_FAILED],
169
+ originalError: error,
170
+ retryable: true,
171
+ userAction: 'Click to try again',
172
+ });
173
+ }
174
+ };
175
+ this.handlePlaidExit = (err, _metadata) => {
176
+ this.isAuthenticating = false;
177
+ if (err) {
178
+ this.handlePlaidError(err);
179
+ }
180
+ };
181
+ this.handlePlaidEvent = (eventName, metadata) => {
182
+ // Handle specific events if needed
183
+ switch (eventName) {
184
+ case 'OPEN':
185
+ this.isAuthenticating = true;
186
+ break;
187
+ case 'CLOSE':
188
+ this.isAuthenticating = false;
189
+ break;
190
+ case 'ERROR':
191
+ this.handlePlaidError(metadata);
192
+ break;
193
+ }
194
+ };
195
+ this.handlePlaidLoad = () => {
196
+ // Plaid Link loaded successfully
197
+ };
198
+ this.handlePlaidError = (error) => {
199
+ let errorCode = PlaidErrorCodes.PLAID_AUTHENTICATION_FAILED;
200
+ let message = PLAID_ERROR_MESSAGES[errorCode];
201
+ let retryable = true;
202
+ let userAction = 'Click to try again';
203
+ // Map Plaid error codes to our error codes
204
+ if (error.error_code) {
205
+ switch (error.error_code) {
206
+ case 'INVALID_CREDENTIALS':
207
+ errorCode = PlaidErrorCodes.PLAID_INVALID_CREDENTIALS;
208
+ message = PLAID_ERROR_MESSAGES[errorCode];
209
+ retryable = true;
210
+ break;
211
+ case 'ITEM_LOGIN_REQUIRED':
212
+ errorCode = PlaidErrorCodes.PLAID_INVALID_CREDENTIALS;
213
+ message = 'Your bank requires re-authentication. Please try again.';
214
+ retryable = true;
215
+ break;
216
+ case 'ITEM_LOCKED':
217
+ errorCode = PlaidErrorCodes.PLAID_ACCOUNT_LOCKED;
218
+ message = PLAID_ERROR_MESSAGES[errorCode];
219
+ retryable = false;
220
+ userAction = 'Contact your bank';
221
+ break;
222
+ case 'INSTITUTION_NOT_RESPONDING':
223
+ errorCode = PlaidErrorCodes.PLAID_MAINTENANCE;
224
+ message = PLAID_ERROR_MESSAGES[errorCode];
225
+ retryable = true;
226
+ break;
227
+ case 'RATE_LIMIT_EXCEEDED':
228
+ errorCode = PlaidErrorCodes.PLAID_RATE_LIMITED;
229
+ message = PLAID_ERROR_MESSAGES[errorCode];
230
+ retryable = true;
231
+ break;
232
+ default:
233
+ if (error.error_message) {
234
+ message = error.error_message;
235
+ }
236
+ break;
237
+ }
238
+ }
239
+ this.handleError({
240
+ code: errorCode,
241
+ message,
242
+ severity: PLAID_ERROR_SEVERITY[errorCode],
243
+ originalError: error,
244
+ retryable,
245
+ userAction,
246
+ });
247
+ this.isAuthenticating = false;
248
+ };
249
+ this.handleError = (plaidError) => {
250
+ this.error = plaidError;
251
+ this.isLoading = false;
252
+ // Emit error event for parent components
253
+ this.plaidVerificationError.emit(plaidError);
254
+ console.error('Plaid verification error:', plaidError);
255
+ };
256
+ this.clearError = () => {
257
+ if (this.error) {
258
+ this.error = null;
259
+ }
260
+ };
261
+ }
262
+ componentDidRender() {
263
+ if (!this.scriptRef)
264
+ return;
265
+ this.scriptRef.onload = () => {
266
+ this.initializePlaidLink();
267
+ };
268
+ this.scriptRef.onerror = () => {
269
+ this.handleError({
270
+ code: PlaidErrorCodes.PLAID_SDK_LOAD_FAILED,
271
+ message: PLAID_ERROR_MESSAGES[PlaidErrorCodes.PLAID_SDK_LOAD_FAILED],
272
+ severity: PLAID_ERROR_SEVERITY[PlaidErrorCodes.PLAID_SDK_LOAD_FAILED],
273
+ retryable: true,
274
+ userAction: 'Refresh the page and try again',
275
+ });
276
+ };
277
+ }
278
+ disconnectedCallback() {
279
+ // Clean up timeouts and abort controllers
280
+ if (this.timeoutId) {
281
+ clearTimeout(this.timeoutId);
282
+ }
283
+ if (this.abortController) {
284
+ this.abortController.abort();
285
+ }
286
+ }
287
+ render() {
288
+ const renderErrorState = () => {
289
+ if (!this.error)
290
+ return null;
291
+ const errorClass = this.error.severity === ComponentErrorSeverity.ERROR
292
+ ? 'text-danger'
293
+ : this.error.severity === ComponentErrorSeverity.WARNING
294
+ ? 'text-warning'
295
+ : 'text-info';
296
+ return (h("div", { class: `${errorClass} mt-2` }, h("small", null, this.error.message), h("br", null), this.error.userAction && (h("small", { class: "text-muted" }, this.error.userAction))));
297
+ };
298
+ const renderStatusState = () => {
299
+ if (this.error)
300
+ return null;
301
+ if (this.isLoading) {
302
+ return (h("div", { class: "text-info mt-2" }, h("small", null, "Verifying bank account...")));
303
+ }
304
+ if (this.isSuccess) {
305
+ return (h("div", { class: "text-success mt-2" }, h("small", null, "\u2713 Bank account verified successfully")));
306
+ }
307
+ if (this.isAuthenticating) {
308
+ return (h("div", { class: "text-info mt-2" }, h("small", null, "Connecting to your bank...")));
309
+ }
310
+ return null;
311
+ };
312
+ const plaidLogo = (h("img", { class: "plaid-logo-img", src: plaidLogoSvg, alt: "Plaid", title: "Plaid", style: {
313
+ display: 'inline',
314
+ width: '20px',
315
+ height: '20px',
316
+ marginLeft: '5px',
317
+ marginTop: '-2px',
318
+ } }));
319
+ return (h(StyledHost, null, h("script", { src: "https://cdn.plaid.com/link/v2/stable/link-initialize.js", async: true, ref: (el) => (this.scriptRef = el) }), h("div", null, h("div", { class: "mb-3" }, h(Button, { variant: "secondary", type: "button", onClick: (event) => { event.preventDefault(); this.openPlaidLink(); }, disabled: this.isLoading, part: buttonSecondary }, "Link Bank Account with ", plaidLogo)), renderErrorState(), renderStatusState())));
320
+ }
321
+ static get is() { return "plaid-verification"; }
322
+ static get properties() {
323
+ return {
324
+ "authToken": {
325
+ "type": "string",
326
+ "mutable": false,
327
+ "complexType": {
328
+ "original": "string",
329
+ "resolved": "string",
330
+ "references": {}
331
+ },
332
+ "required": false,
333
+ "optional": false,
334
+ "docs": {
335
+ "tags": [],
336
+ "text": ""
337
+ },
338
+ "getter": false,
339
+ "setter": false,
340
+ "reflect": false,
341
+ "attribute": "auth-token"
342
+ },
343
+ "accountId": {
344
+ "type": "string",
345
+ "mutable": false,
346
+ "complexType": {
347
+ "original": "string",
348
+ "resolved": "string",
349
+ "references": {}
350
+ },
351
+ "required": false,
352
+ "optional": false,
353
+ "docs": {
354
+ "tags": [],
355
+ "text": ""
356
+ },
357
+ "getter": false,
358
+ "setter": false,
359
+ "reflect": false,
360
+ "attribute": "account-id"
361
+ },
362
+ "businessId": {
363
+ "type": "string",
364
+ "mutable": false,
365
+ "complexType": {
366
+ "original": "string",
367
+ "resolved": "string",
368
+ "references": {}
369
+ },
370
+ "required": false,
371
+ "optional": false,
372
+ "docs": {
373
+ "tags": [],
374
+ "text": ""
375
+ },
376
+ "getter": false,
377
+ "setter": false,
378
+ "reflect": false,
379
+ "attribute": "business-id"
380
+ }
381
+ };
382
+ }
383
+ static get states() {
384
+ return {
385
+ "linkToken": {},
386
+ "linkTokenId": {},
387
+ "plaidLink": {},
388
+ "isAuthenticating": {},
389
+ "isSuccess": {},
390
+ "error": {},
391
+ "isLoading": {}
392
+ };
393
+ }
394
+ static get events() {
395
+ return [{
396
+ "method": "plaidVerificationSuccess",
397
+ "name": "plaidVerificationSuccess",
398
+ "bubbles": true,
399
+ "cancelable": true,
400
+ "composed": true,
401
+ "docs": {
402
+ "tags": [],
403
+ "text": ""
404
+ },
405
+ "complexType": {
406
+ "original": "{ publicToken: string, bankAccount: any }",
407
+ "resolved": "{ publicToken: string; bankAccount: any; }",
408
+ "references": {}
409
+ }
410
+ }, {
411
+ "method": "plaidVerificationError",
412
+ "name": "plaidVerificationError",
413
+ "bubbles": true,
414
+ "cancelable": true,
415
+ "composed": true,
416
+ "docs": {
417
+ "tags": [],
418
+ "text": ""
419
+ },
420
+ "complexType": {
421
+ "original": "PlaidError",
422
+ "resolved": "PlaidError",
423
+ "references": {
424
+ "PlaidError": {
425
+ "location": "import",
426
+ "path": "../../../../api/Plaid",
427
+ "id": "src/api/Plaid.ts::PlaidError"
428
+ }
429
+ }
430
+ }
431
+ }];
432
+ }
433
+ }
@@ -108,7 +108,7 @@ export class BusinessTermsConditionsFormStep {
108
108
  return (h("a", { href: "https://justifi.tech/merchant-agreement/", target: "_blank", rel: "noopener noreferrer" }, "merchant agreement"));
109
109
  }
110
110
  render() {
111
- return (h("form", { key: '721f3c171358f9450a8b460dafac3c9f7f27727b' }, h("fieldset", { key: 'e151086c528d5e359e4ecd2c33feb01c5571a6ca' }, h("legend", { key: 'ff4ba3bead3ec50cf9736d6a864740e542f42b2d', part: heading2 }, "Terms and Conditions"), h("hr", { key: 'c076bfe230bafbe8db7280f5f708de893c970bf2' }), h("div", { key: 'd2a1e0f4e15077d07fe7de2cb847252990b44bde' }, h("p", { key: '559c4c6d6e27b5fb800984e87097fe080482462d' }, "Please read and accept the ", this.merchantAgreementLink, " to submit your provisioning request.")), h("br", { key: '014b3a7be231c81bd23c35ab212d7ac4e4c1d107' }), h("div", { key: '3ef38ecffd678c36c564836434f0a0da341116af', class: "row-gy-3" }, h("div", { key: 'e715723e19a212628d29fec46ca494b7080dac66', class: "col-12" }, h("form-control-checkbox", { key: '6054f012fa3abacf6b9f6ffe7d7e88444d8a1066', name: "accepted", label: "I agree to the terms and conditions", inputHandler: this.inputHandler, errorText: this.errors.accepted, disabled: this.acceptedTermsBefore, helpText: this.formHelperText, checked: this.acceptedTerms }))))));
111
+ return (h("form", { key: '33336d0a66d63ce39951822fd570a9a0689e714d' }, h("fieldset", { key: 'fcfdb59eef671cb408ed99e2dad20d6be706688a' }, h("legend", { key: 'f0cf7f0ac15c90cf36ee25d4bf986c0e781a2e92', part: heading2 }, "Terms and Conditions"), h("hr", { key: 'd5c820e7d6523f931040a994bd103d69fd644c45' }), h("div", { key: '681b584de14afe121f5dc69ee0bad1cab51ba0d1' }, h("p", { key: '7c597bf891a108d303739126b806ded5220f56ab' }, "Please read and accept the ", this.merchantAgreementLink, " to submit your provisioning request.")), h("br", { key: '52854c5a07611180be40df21a5f60d7d9d4c4cb7' }), h("div", { key: '7448b3f6138b996edac137b961367725e3b40556', class: "row-gy-3" }, h("div", { key: 'c732deb4e1e3a2d04dd4e09914543a7f594af108', class: "col-12" }, h("form-control-checkbox", { key: 'fca18e4843aef20d13790029b114b2ecaeb6ffa2', name: "accepted", label: "I agree to the terms and conditions", inputHandler: this.inputHandler, errorText: this.errors.accepted, disabled: this.acceptedTermsBefore, helpText: this.formHelperText, checked: this.acceptedTerms }))))));
112
112
  }
113
113
  static get is() { return "justifi-business-terms-conditions-form-step"; }
114
114
  static get properties() {
@@ -121,7 +121,7 @@ export class BusinessTermsConditionsFormStep {
121
121
  "resolved": "string",
122
122
  "references": {}
123
123
  },
124
- "required": false,
124
+ "required": true,
125
125
  "optional": false,
126
126
  "docs": {
127
127
  "tags": [],
@@ -140,7 +140,7 @@ export class BusinessTermsConditionsFormStep {
140
140
  "resolved": "string",
141
141
  "references": {}
142
142
  },
143
- "required": false,
143
+ "required": true,
144
144
  "optional": false,
145
145
  "docs": {
146
146
  "tags": [],
@@ -4,12 +4,14 @@ export const additionalQuestionsSchema = (allowOptionalFields) => {
4
4
  const schema = object({
5
5
  business_revenue: revenueValidation.required('Enter business revenue'),
6
6
  business_payment_volume: paymentVolumeValidation.required('Enter business payment volume'),
7
+ business_average_transaction_amount: revenueValidation.required('Enter average transaction amount'),
7
8
  business_when_service_received: whenServiceReceivedValidation.required('Select when service is received'),
8
9
  business_other_payment_details: otherPaymentDetailsValidation.nullable(),
9
10
  });
10
11
  const easySchema = object({
11
12
  business_revenue: revenueValidation.nullable(),
12
13
  business_payment_volume: paymentVolumeValidation.nullable(),
14
+ business_average_transaction_amount: revenueValidation.nullable(),
13
15
  business_when_service_received: whenServiceReceivedValidation.nullable(),
14
16
  business_other_payment_details: otherPaymentDetailsValidation.nullable(),
15
17
  });
@@ -1,6 +1,6 @@
1
1
  import { object, string } from "yup";
2
2
  import { addressSchemaUSA, addressSchemaCAN } from "./business-address-schema";
3
- import { dobValidation, emailValidation, identityNameValidation, identityTitleValidation, phoneValidation, ssnValidation, makeIdentityNumberValidation, } from "./schema-validations";
3
+ import { dobValidation, emailValidation, identityNameValidation, identityTitleValidation, phoneValidation, ssnValidation, makeIdentityNumberValidation, ownershipPercentageValidation, } from "./schema-validations";
4
4
  import { CountryCode } from "../../../utils/country-codes";
5
5
  // Internal USA schemas
6
6
  const schemaUSA = (role) => object({
@@ -11,6 +11,7 @@ const schemaUSA = (role) => object({
11
11
  dob_full: dobValidation(role).nullable(),
12
12
  ssn_last4: string().nullable(),
13
13
  identification_number: ssnValidation.nullable(),
14
+ ownership_percentage: ownershipPercentageValidation.nullable(),
14
15
  address: addressSchemaUSA(true),
15
16
  });
16
17
  const strictSchemaUSA = (role) => object({
@@ -22,6 +23,7 @@ const strictSchemaUSA = (role) => object({
22
23
  ssn_last4: string().nullable(),
23
24
  // ssn required unless last4 provided (handled inside ssnValidation)
24
25
  identification_number: ssnValidation,
26
+ ownership_percentage: ownershipPercentageValidation.nullable(),
25
27
  address: addressSchemaUSA(false),
26
28
  });
27
29
  // Internal CAN schemas
@@ -33,6 +35,7 @@ const schemaCAN = (role) => object({
33
35
  dob_full: dobValidation(role).nullable(),
34
36
  ssn_last4: string().nullable(),
35
37
  identification_number: makeIdentityNumberValidation(CountryCode.CAN).nullable(),
38
+ ownership_percentage: ownershipPercentageValidation.nullable(),
36
39
  address: addressSchemaCAN(true),
37
40
  });
38
41
  const strictSchemaCAN = (role) => object({
@@ -43,6 +46,7 @@ const strictSchemaCAN = (role) => object({
43
46
  dob_full: dobValidation(role).required('Enter date of birth'),
44
47
  ssn_last4: string().nullable(),
45
48
  identification_number: makeIdentityNumberValidation(CountryCode.CAN),
49
+ ownership_percentage: ownershipPercentageValidation.nullable(),
46
50
  address: addressSchemaCAN(false),
47
51
  });
48
52
  export const identitySchemaUSA = (role, allowOptionalFields) => allowOptionalFields ? schemaUSA(role) : strictSchemaUSA(role);
@@ -124,6 +124,21 @@ export const ssnValidation = string()
124
124
  return value !== '123456789';
125
125
  })
126
126
  .transform(transformEmptyString);
127
+ export const ownershipPercentageValidation = string()
128
+ .matches(numbersOnlyRegex, 'Enter valid percentage')
129
+ .test('min', 'Percentage must be at least 0', (value) => {
130
+ if (!value)
131
+ return true;
132
+ const num = parseFloat(value);
133
+ return num >= 0;
134
+ })
135
+ .test('max', 'Percentage must be at most 100', (value) => {
136
+ if (!value)
137
+ return true;
138
+ const num = parseFloat(value);
139
+ return num <= 100;
140
+ })
141
+ .transform(transformEmptyString);
127
142
  // Address Validations
128
143
  export const lineOneValidation = string()
129
144
  .min(5, 'Address must be at least 5 characters')
@@ -33,10 +33,10 @@ export class BankAccountForm {
33
33
  return this.accountNumberIframeElement.tokenize(clientId, paymentMethodMetadata, account);
34
34
  }
35
35
  render() {
36
- return (h(Host, { key: '32cfa049dff176af26d2a4bcb86c440a99bc8668' }, h(BankAccountFormSkeleton, { key: '8382fc8ff7726e245245db06b01fdc253d43328e', isReady: this.isReady }), h("div", { key: '83f16d13bb8c338dd859a60a7bd63edbb8f703b6', class: "container-fluid p-0", style: {
36
+ return (h(Host, { key: 'a104b2e88e818472d0158990ccf2cac6d7315616' }, h(BankAccountFormSkeleton, { key: '1ed1ac87a66aedf6a7528247e0ff3a803c74e4c3', isReady: this.isReady }), h("div", { key: 'a96c05c60c51f97c8abb7dc6a8cfebc940ea1513', class: "container-fluid p-0", style: {
37
37
  opacity: this.isReady ? '1' : '0',
38
38
  height: this.isReady ? 'auto' : '0',
39
- } }, h("div", { key: 'ff5a4020f51e917874583036ef3b50d9496a393e', class: "row mb-3" }, h("iframe-input", { key: '334cd1bbdb23cb1d4ae5df1f89737913209fd1c1', inputId: "accountNumber", ref: (el) => (this.accountNumberIframeElement = el), label: "Account Number", iframeOrigin: `${this.iframeOrigin}/v2/accountNumber?tabId=${this.tabId}` })), h("div", { key: '65a00ea0fe1202240a2641b40d5f0455483746ff', class: "row" }, h("iframe-input", { key: 'c8dda20444c7f6494fad1377cc556676e1d7dc54', inputId: "routingNumber", ref: (el) => (this.routingNumberIframeElement = el), label: "Routing Number", iframeOrigin: `${this.iframeOrigin}/v2/routingNumber?tabId=${this.tabId}` })))));
39
+ } }, h("div", { key: '3d168fd241702b30f0c8727d3c0aae65c20b69aa', class: "row mb-3" }, h("iframe-input", { key: 'dc1da989b1577ed62b3eeafd33128aca38e4610d', inputId: "accountNumber", ref: (el) => (this.accountNumberIframeElement = el), label: "Account Number", iframeOrigin: `${this.iframeOrigin}/v2/accountNumber?tabId=${this.tabId}` })), h("div", { key: '1179ae9d6b9f476bb01a1ee4f4edd7da6f22f635', class: "row" }, h("iframe-input", { key: '7e79b383876be1711a2e21ab7462f86281ebf28c', inputId: "routingNumber", ref: (el) => (this.routingNumberIframeElement = el), label: "Routing Number", iframeOrigin: `${this.iframeOrigin}/v2/routingNumber?tabId=${this.tabId}` })))));
40
40
  }
41
41
  static get is() { return "bank-account-form"; }
42
42
  static get states() {
@@ -37,10 +37,10 @@ export class CardForm {
37
37
  return this.cardNumberIframeElement.tokenize(clientId, paymentMethodMetadata, account);
38
38
  }
39
39
  render() {
40
- return (h(Host, { key: '171cb8db5cce1778ef5f590c6b4d72f327c37bad' }, h(CardFormSkeleton, { key: '084ed0d409f1e747a95578060626d1704fefb783', isReady: this.isReady }), h("div", { key: 'ccf225f0f420a22cc1cffb1d7f9dc51fe92612ee', class: "container-fluid p-0", style: {
40
+ return (h(Host, { key: 'fd58409622904cfdbe1df9e7aa893cec0b469472' }, h(CardFormSkeleton, { key: '7bd4dbc17afc1641eafa5cc6c12349901a05b862', isReady: this.isReady }), h("div", { key: '1eb88b3443cb12f592a247335d5a6de2597bf10d', class: "container-fluid p-0", style: {
41
41
  opacity: this.isReady ? '1' : '0',
42
42
  height: this.isReady ? 'auto' : '0',
43
- } }, h("div", { key: '7e7599c24e95a364f1011ed8f8ba2e387f4bc184', class: "mb-3" }, h("iframe-input", { key: '5ec2f426a232a8c1387e7e54f7321672e16a230c', inputId: "cardNumber", ref: (el) => (this.cardNumberIframeElement = el), label: "Card Number", iframeOrigin: `${this.iframeOrigin}/v2/cardNumber?tabId=${this.tabId}` })), h("div", { key: 'bbf1284e4bd2213cf48eb64b88c5ecd5492c51e5', class: "d-flex align-items-start" }, h("div", { key: '70bf0e98c9c99913773ebcd5b6b9e88679779d6f', class: "flex-fill me-3" }, h("iframe-input", { key: 'b0ed2bbe9a63b83810fa170350cc28e777bc0509', inputId: "expirationMonth", ref: (el) => (this.expirationMonthIframeElement = el), label: "Exp. Month", iframeOrigin: `${this.iframeOrigin}/v2/expirationMonth?tabId=${this.tabId}` })), h("div", { key: '4d6592dc2f6dea2d2d4ddb8667681576817e6c98', class: "flex-fill me-3" }, h("iframe-input", { key: '34dabee2355d51ca1175af9a084188a6d44714df', inputId: "expirationYear", ref: (el) => (this.expirationYearIframeElement = el), label: "Exp. Year", iframeOrigin: `${this.iframeOrigin}/v2/expirationYear?tabId=${this.tabId}` })), h("div", { key: 'c3afab4dea5e93edca3a0372d397afd8ef937de1', class: "flex-fill" }, h("iframe-input", { key: '0777691de3a8e12338a9c9b967ce3f20f675c6b3', inputId: "CVV", ref: (el) => (this.cvvIframeElement = el), label: "CVV", iframeOrigin: `${this.iframeOrigin}/v2/CVV?tabId=${this.tabId}` }))))));
43
+ } }, h("div", { key: '4b50883a1094343e1f039c8bafed2ecfb42be0e8', class: "mb-3" }, h("iframe-input", { key: '83930c6af6b6a7eb82bf66565fa2e9d16b3bfa59', inputId: "cardNumber", ref: (el) => (this.cardNumberIframeElement = el), label: "Card Number", iframeOrigin: `${this.iframeOrigin}/v2/cardNumber?tabId=${this.tabId}` })), h("div", { key: '33c8a34d012abc533d5b69baa3fddfcb3714be61', class: "d-flex align-items-start" }, h("div", { key: 'b37fedaab03b543789fb2909d0daa91d28d9b772', class: "flex-fill me-3" }, h("iframe-input", { key: 'd5fa7b25f4726e6896ee8fcf0a2ab882b1df5260', inputId: "expirationMonth", ref: (el) => (this.expirationMonthIframeElement = el), label: "Exp. Month", iframeOrigin: `${this.iframeOrigin}/v2/expirationMonth?tabId=${this.tabId}` })), h("div", { key: '38798bb90f5457d3e5c3659c716fe38a79a2f2a0', class: "flex-fill me-3" }, h("iframe-input", { key: '44d57ddbe4221e1d0000a9db7a19d8878211cb50', inputId: "expirationYear", ref: (el) => (this.expirationYearIframeElement = el), label: "Exp. Year", iframeOrigin: `${this.iframeOrigin}/v2/expirationYear?tabId=${this.tabId}` })), h("div", { key: '233f99090baecc6097f2226d93a14d428571b03f', class: "flex-fill" }, h("iframe-input", { key: '0d353a3bc4c1ece3a5ff3aecc9aabf349d59bc90', inputId: "CVV", ref: (el) => (this.cvvIframeElement = el), label: "CVV", iframeOrigin: `${this.iframeOrigin}/v2/CVV?tabId=${this.tabId}` }))))));
44
44
  }
45
45
  static get is() { return "card-form"; }
46
46
  static get states() {
@@ -5,6 +5,25 @@ import { checkoutStore } from "../../store/checkout.store";
5
5
  import { checkoutSummary } from "../../styles/parts";
6
6
  import { StyledHost } from "../../ui-components";
7
7
  import { PAYMENT_METHODS } from "../modular-checkout/ModularCheckout";
8
+ /**
9
+ * @part font-family - Controls the font family for the component.
10
+ * @part color - Controls the text color.
11
+ * @part background-color - Controls the background color.
12
+ * @part button - Button styles.
13
+ * @part button-disabled - Disabled button styles.
14
+ * @part input - Input field styles.
15
+ * @part input-focused - Input styles when focused.
16
+ * @part input-invalid - Input styles when invalid.
17
+ * @part input-invalid-and-focused - Input styles when invalid and focused.
18
+ * @part input-radio - Radio input styles.
19
+ * @part input-checkbox - Checkbox input styles.
20
+ * @part input-checkbox-checked - Checkbox input styles when checked.
21
+ * @part input-checkbox-checked-focused - Checkbox input styles when checked and focused.
22
+ * @part input-checkbox-focused - Checkbox input styles when focused.
23
+ * @part button-primary - Primary button styles.
24
+ * @part radio-list-item - Radio list item styles.
25
+ * @part checkout-summary - Summary section of the checkout component.
26
+ */
8
27
  export class Checkout {
9
28
  constructor() {
10
29
  this.availablePaymentMethods = [];
@@ -76,9 +95,9 @@ export class Checkout {
76
95
  }
77
96
  render() {
78
97
  var _a, _b;
79
- return (h(StyledHost, { key: 'e9f527c5dd4dc564c4fb00d69b27e07c90e8b552' }, h("justifi-modular-checkout", { key: 'e80dd4c78282fc428f0e78d6d87f71f262577f01', ref: (el) => {
98
+ return (h(StyledHost, { key: '6bbc4c4997d14ac9040b8f88075a7e9b53208d4c' }, h("justifi-modular-checkout", { key: '9b11e7df277e5e9f70cd8928f865a2e62cfc8293', ref: (el) => {
80
99
  this.modularCheckoutRef = el;
81
- }, authToken: this.authToken, checkoutId: this.checkoutId, preCompleteHook: this.preCompleteHook }, h("div", { key: '92f3821b2566f6ede351145cafe934bb1b14e970', class: "row gy-3 jfi-checkout-core" }, h("div", { key: 'ed96eb7b2620df4c8398b36b62e2eb5744de7545', class: "col-12", part: checkoutSummary }, h("justifi-header", { key: 'a23f3ea139874c80830b9bd62b44bedad2520d89', text: "Summary", level: "h2", class: "fs-5 fw-bold pb-3" }), h("section", { key: '45f903ebb6cee7d382414fd04656b605fb5f9e91' }, h("justifi-checkout-summary", { key: '7a6ba74f821aed6aee12682626bd1f304a90cc4b' }))), h("div", { key: '3930d68c41aa3a1b99371bbea285b2de4d734766', class: "col-12 mt-4" }, h("slot", { key: '8cb5f1ef64ae6ecd25edf861b555dc6f20abd0ec', name: "insurance" })), h("div", { key: '3f8b4dae6eb90999927070027a77bfa9a4b09442', class: "col-12 mt-4" }, h("justifi-header", { key: '4335e04295005071b061391d27a5cc4677519e71', text: "Payment", level: "h2", class: "fs-5 fw-bold pb-3" }), this.showPaymentTypeHeader && (h("justifi-header", { key: '1ca763ef15405ee55bf763bd7760f36e2925bbe1', text: "Select payment type", level: "h3", class: "fs-6 fw-bold lh-lg" })), h("div", { key: 'c52c81c4b84fde4168037f06c7d5b6f491d2bea9', class: "d-flex flex-column" }, h("section", { key: '3d1981827d98b947e541599582dc1f15bfe3f542' }, h("div", { key: '8ddeb4dae00fe55092fba788c9fb2b44ad1a1240' }, this.availablePaymentMethods.includes(PAYMENT_METHODS.APPLE_PAY) && (h("div", { key: '496486644e4caa90379e20cfb80b20c2670eef0b', class: "mb-3" }, h("justifi-apple-pay", { key: '9d360fed1e166d0adf4f97f8b1817fde6a7dc0ec' }))), this.availablePaymentMethods.includes(PAYMENT_METHODS.GOOGLE_PAY) && (h("div", { key: 'e4d440ac6bedf38eb2baab3717d0d1308aaa5b10', class: "mb-3" }, h("justifi-google-pay", { key: '9eee94d588e48fc5550cd3965f45612de3aedccb', ref: (el) => (this.googlePayRef = el) }))), h("justifi-saved-payment-methods", { key: '244e8877a4ce83ab8c4fff6051957d0ec50deafa' }), this.availablePaymentMethods.includes(PAYMENT_METHODS.SEZZLE) && (h("justifi-radio-list-item", { key: '37904744a21eb6f1f96e13831e3b0029aa87d25f', name: "paymentMethodType", value: PAYMENT_METHODS.SEZZLE, checked: ((_a = checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.SEZZLE, label: h("justifi-sezzle-payment-method", { ref: (el) => (this.sezzlePaymentMethodRef = el) }), "onRadio-click": () => { var _a; (_a = this.sezzlePaymentMethodRef) === null || _a === void 0 ? void 0 : _a.handleSelectionClick(); } })), this.availablePaymentMethods.includes(PAYMENT_METHODS.PLAID) && !this.disableBnpl && (h("justifi-radio-list-item", { key: 'd2fc7e88a17372967a64edf57a33ef0758568357', name: "paymentMethodType", value: PAYMENT_METHODS.PLAID, checked: ((_b = checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.selectedPaymentMethod) === null || _b === void 0 ? void 0 : _b.type) === PAYMENT_METHODS.PLAID, label: h("justifi-plaid-payment-method", { ref: (el) => (this.plaidPaymentMethodRef = el) }), "onRadio-click": () => { var _a; (_a = this.plaidPaymentMethodRef) === null || _a === void 0 ? void 0 : _a.handleSelectionClick(); } })), h("internal-tokenize-payment-method", { key: 'b2c2b5b2db0970ac8bfb70141f9b0fa4545dddce', ref: (el) => (this.tokenizePaymentMethodRef = el), authToken: this.authToken, accountId: checkoutStore.accountId, disableCreditCard: this.disableCreditCard, disableBankAccount: this.disableBankAccount, hideCardBillingForm: this.hideCardBillingForm, hideBankAccountBillingForm: this.hideBankAccountBillingForm, hideSubmitButton: true, paymentMethodGroupId: checkoutStore.paymentMethodGroupId }))))), h("div", { key: 'e8f3ba632562b2369e6acc8a135647cc74dc0c0d', class: "mt-4" }, h("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" } }))))));
100
+ }, authToken: this.authToken, checkoutId: this.checkoutId, preCompleteHook: this.preCompleteHook }, h("div", { key: 'c64981c31fd2d022f886b0613bd47bd0b0fe5f2a', class: "row gy-3 jfi-checkout-core" }, h("div", { key: '8f01af25b281a19f7fc83451a44f63836efadc20', class: "col-12", part: checkoutSummary }, h("justifi-header", { key: 'd729ed0b26c94e74d8ce824fcf97bd3002e3a9d0', text: "Summary", level: "h2", class: "fs-5 fw-bold pb-3" }), h("section", { key: '9cc9863b1dd2531bda52e609bba5c7c8f9883cb1' }, h("justifi-checkout-summary", { key: '00f36de593e245982bfe03c8867881fedfb7d43f' }))), h("div", { key: '3fe5390d7b8b2fbcdbfff4b71d4b7c43ddae9ff6', class: "col-12 mt-4" }, h("slot", { key: '84fa5a7e7772124d7fa61a9317499618850eb0bb', name: "insurance" })), h("div", { key: 'c8d1553c6041c0e000eab9dc953a23aa089a3f90', class: "col-12 mt-4" }, h("justifi-header", { key: 'a08fc163ba437f767ab88d78ac55ae003b09a567', text: "Payment", level: "h2", class: "fs-5 fw-bold pb-3" }), this.showPaymentTypeHeader && (h("justifi-header", { key: 'bff5fc2986d37bbe49a5253d43db55663ee7be74', text: "Select payment type", level: "h3", class: "fs-6 fw-bold lh-lg" })), h("div", { key: 'f5ca969400444639b09e423b154e47abf89c731f', class: "d-flex flex-column" }, h("section", { key: 'b70209321ebefd161ae3113293c62fe953913f2e' }, h("div", { key: '4df7539a9b8d6b52d47ad32974a59ab2d366b4b2' }, this.availablePaymentMethods.includes(PAYMENT_METHODS.APPLE_PAY) && (h("div", { key: '023deb9a1d025e36cc2b07c3ea8144e0068ea470', class: "mb-3" }, h("justifi-apple-pay", { key: '4e52440f329bae25194e71fa30190218f5c1cecb' }))), this.availablePaymentMethods.includes(PAYMENT_METHODS.GOOGLE_PAY) && (h("div", { key: '83e12debb25e0ef095ca40d87054411396238754', class: "mb-3" }, h("justifi-google-pay", { key: 'ed6312e39ff4a98c819cf1853f416c6fbf845323', ref: (el) => (this.googlePayRef = el) }))), h("justifi-saved-payment-methods", { key: 'e059fda26ec54c4f908754663fa23f26c3df8f0c' }), this.availablePaymentMethods.includes(PAYMENT_METHODS.SEZZLE) && (h("justifi-radio-list-item", { key: '3d836539d5850abfd956b39bede6efad5954bdad', name: "paymentMethodType", value: PAYMENT_METHODS.SEZZLE, checked: ((_a = checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.selectedPaymentMethod) === null || _a === void 0 ? void 0 : _a.type) === PAYMENT_METHODS.SEZZLE, label: h("justifi-sezzle-payment-method", { ref: (el) => (this.sezzlePaymentMethodRef = el) }), "onRadio-click": () => { var _a; (_a = this.sezzlePaymentMethodRef) === null || _a === void 0 ? void 0 : _a.handleSelectionClick(); } })), this.availablePaymentMethods.includes(PAYMENT_METHODS.PLAID) && !this.disableBnpl && (h("justifi-radio-list-item", { key: 'ac0ac64e9f7586764e3f5671c74794c80ffcff54', name: "paymentMethodType", value: PAYMENT_METHODS.PLAID, checked: ((_b = checkoutStore === null || checkoutStore === void 0 ? void 0 : checkoutStore.selectedPaymentMethod) === null || _b === void 0 ? void 0 : _b.type) === PAYMENT_METHODS.PLAID, label: h("justifi-plaid-payment-method", { ref: (el) => (this.plaidPaymentMethodRef = el) }), "onRadio-click": () => { var _a; (_a = this.plaidPaymentMethodRef) === null || _a === void 0 ? void 0 : _a.handleSelectionClick(); } })), h("internal-tokenize-payment-method", { key: '894e7a5bfef2eefa5d045928bb6fab3b1f39bd5e', ref: (el) => (this.tokenizePaymentMethodRef = el), authToken: this.authToken, accountId: checkoutStore.accountId, disableCreditCard: this.disableCreditCard, disableBankAccount: this.disableBankAccount, hideCardBillingForm: this.hideCardBillingForm, hideBankAccountBillingForm: this.hideBankAccountBillingForm, hideSubmitButton: true, paymentMethodGroupId: checkoutStore.paymentMethodGroupId }))))), h("div", { key: '2121952545d38693f11426ef8146b39956d4f427', class: "mt-4" }, h("justifi-button", { key: '5e7cf3c699048943df68c0506a34617d0b14bf07', text: "Pay", type: "submit", variant: "primary", clickHandler: (e) => this.submit(e), disabled: this.isSubmitting, isLoading: this.isSubmitting, customStyle: { width: '100%', textAlign: "center" } }))))));
82
101
  }
83
102
  static get is() { return "justifi-checkout"; }
84
103
  static get properties() {
@@ -91,7 +110,7 @@ export class Checkout {
91
110
  "resolved": "string",
92
111
  "references": {}
93
112
  },
94
- "required": false,
113
+ "required": true,
95
114
  "optional": false,
96
115
  "docs": {
97
116
  "tags": [],
@@ -110,7 +129,7 @@ export class Checkout {
110
129
  "resolved": "string",
111
130
  "references": {}
112
131
  },
113
- "required": false,
132
+ "required": true,
114
133
  "optional": false,
115
134
  "docs": {
116
135
  "tags": [],