@justifi/webcomponents 6.4.3 → 6.5.0-rc.2
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.
- package/dist/cjs/{Refund-BnhHNKLz.js → GooglePay-D3zN44IX.js} +415 -0
- package/dist/cjs/bank-account-document-form-inputs_6.cjs.entry.js +8 -7
- package/dist/cjs/bank-account-form.cjs.entry.js +2 -2
- package/dist/cjs/{business.service-DIlSj5KT.js → business.service-88yKWtbE.js} +1 -1
- package/dist/cjs/card-form.cjs.entry.js +2 -2
- package/dist/cjs/{check-pkg-version-CnAkXgrN.js → check-pkg-version-RW_N0V76.js} +2 -2
- package/dist/cjs/{checkout.service-Ce0F8cOf.js → checkout.service-Cj1RxduX.js} +1 -1
- package/dist/cjs/checkouts-list-core.cjs.entry.js +3 -2
- package/dist/cjs/custom-popper.cjs.entry.js +2 -2
- package/dist/cjs/{dispute.service-DuYeSUgK.js → dispute.service-AXzLxuOs.js} +1 -1
- package/dist/cjs/form-alert_5.cjs.entry.js +6 -6
- package/dist/cjs/form-control-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/form-control-date.cjs.entry.js +2 -2
- package/dist/cjs/form-control-file-v2_2.cjs.entry.js +3 -3
- package/dist/cjs/form-control-monetary-provisioning.cjs.entry.js +2 -2
- package/dist/cjs/form-control-monetary.cjs.entry.js +2 -2
- package/dist/cjs/form-control-number-masked_3.cjs.entry.js +4 -4
- package/dist/cjs/form-control-number.cjs.entry.js +2 -2
- package/dist/cjs/form-control-radio.cjs.entry.js +2 -2
- package/dist/cjs/form-control-select_3.cjs.entry.js +4 -4
- package/dist/cjs/{get-payment-details-vVIxYblm.js → get-payment-details-DVBTf7h5.js} +2 -2
- package/dist/cjs/{get-subaccounts-yo2pT61R.js → get-subaccounts-DuYNs7Ny.js} +2 -2
- package/dist/cjs/gross-payment-chart-core.cjs.entry.js +1 -1
- package/dist/cjs/hidden-input_2.cjs.entry.js +5 -5
- package/dist/cjs/{index-C2ITzalN.js → index-CajjbB9t.js} +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/internal-tokenize-payment-method_7.cjs.entry.js +23 -24
- package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +6 -5
- package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +12 -11
- package/dist/cjs/justifi-additional-statement_8.cjs.entry.js +8 -8
- package/dist/cjs/{justifi-apple-pay_7.cjs.entry.js → justifi-apple-pay_8.cjs.entry.js} +903 -253
- package/dist/cjs/justifi-bank-account-billing-form-simple_3.cjs.entry.js +2 -2
- package/dist/cjs/justifi-business-details.cjs.entry.js +5 -4
- package/dist/cjs/justifi-business-form.cjs.entry.js +5 -4
- package/dist/cjs/justifi-business-representative-form-inputs.cjs.entry.js +2 -2
- package/dist/cjs/justifi-checkout.cjs.entry.js +14 -15
- package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +9 -8
- package/dist/cjs/justifi-checkouts-list.cjs.entry.js +8 -7
- package/dist/cjs/justifi-details.cjs.entry.js +1 -1
- package/dist/cjs/justifi-dispute-management-core.cjs.entry.js +1 -1
- package/dist/cjs/justifi-dispute-management.cjs.entry.js +6 -5
- package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +9 -8
- package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +4 -3
- package/dist/cjs/justifi-order-terminals.cjs.entry.js +10 -9
- package/dist/cjs/justifi-owner-form_3.cjs.entry.js +7 -6
- package/dist/cjs/justifi-payment-details.cjs.entry.js +6 -5
- package/dist/cjs/justifi-payment-provisioning-core.cjs.entry.js +1 -1
- package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +6 -5
- package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +7 -6
- package/dist/cjs/justifi-payments-list-filters.cjs.entry.js +2 -2
- package/dist/cjs/justifi-payments-list.cjs.entry.js +7 -6
- package/dist/cjs/justifi-payout-details.cjs.entry.js +6 -5
- package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +7 -6
- package/dist/cjs/justifi-payouts-list-filters.cjs.entry.js +2 -2
- package/dist/cjs/justifi-payouts-list.cjs.entry.js +8 -7
- package/dist/cjs/justifi-refund-payment.cjs.entry.js +10 -9
- package/dist/cjs/justifi-saved-payment-method.cjs.entry.js +1 -1
- package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +7 -8
- package/dist/cjs/justifi-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +12 -11
- package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +7 -6
- package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +8 -7
- package/dist/cjs/justifi-terminals-list.cjs.entry.js +8 -7
- package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{package-CfJO8jEa.js → package-DCSehIuE.js} +1 -1
- package/dist/cjs/pagination-menu.cjs.entry.js +3 -3
- package/dist/cjs/payment-details-core.cjs.entry.js +11 -10
- package/dist/cjs/payment-method-option.cjs.entry.js +1 -1
- package/dist/cjs/{payment.service-DLvoJ2K6.js → payment.service-7Ayen6ud.js} +1 -1
- package/dist/cjs/payments-list-core.cjs.entry.js +3 -2
- package/dist/cjs/payout-details-core.cjs.entry.js +3 -3
- package/dist/cjs/{payout.service-CrBp8aru.js → payout.service-6PsVtHcu.js} +1 -1
- package/dist/cjs/payouts-list-core.cjs.entry.js +3 -2
- package/dist/cjs/table-filters-menu.cjs.entry.js +1 -1
- package/dist/cjs/terminal-orders-list-core.cjs.entry.js +4 -3
- package/dist/cjs/{terminal-orders-table-8PxObvu8.js → terminal-orders-table-BQXO4z_E.js} +3 -3
- package/dist/cjs/terminal-quantity-selector.cjs.entry.js +1 -1
- package/dist/cjs/{terminal.service-D0fIw59V.js → terminal.service-DgE2p1j0.js} +1 -1
- package/dist/cjs/terminals-list-core.cjs.entry.js +3 -2
- package/dist/cjs/webcomponents.cjs.js +1 -1
- package/dist/collection/api/GooglePay.js +181 -0
- package/dist/collection/api/index.js +2 -0
- package/dist/collection/api/services/google-pay.service.js +240 -0
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/business-forms/business-form/additional-questions/additional-questions.js +7 -6
- package/dist/collection/components/business-forms/business-form/business-core-info/business-core-info.js +2 -2
- package/dist/collection/components/business-forms/business-form/business-representative/business-representative.js +8 -7
- package/dist/collection/components/business-forms/business-form/legal-address-form/legal-address-form.js +7 -6
- package/dist/collection/components/business-forms/owner-form/identity-address/identity-address-form.js +1 -1
- package/dist/collection/components/business-forms/owner-form/owner-form-core.js +1 -1
- package/dist/collection/components/business-forms/owner-form/owner-form-inputs.js +8 -7
- package/dist/collection/components/business-forms/owner-form/owner-form.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/additional-questions/business-additional-questions-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-document-inputs.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-form-inputs-canada.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-form-inputs.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/bank-account/bank-account-read-only-value.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/bank-account/business-bank-account-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/business-core-info/business-core-info-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/business-owners/business-owners-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/business-representative/business-representative-form-inputs.js +2 -2
- package/dist/collection/components/business-forms/payment-provisioning/business-representative/business-representative-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/form-address-fields/form-address-fields.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/form-control-monetary-provisioning.js +2 -2
- package/dist/collection/components/business-forms/payment-provisioning/legal-address-form/legal-address-form-step.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-core.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-form-buttons.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning-form-steps.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/payment-provisioning.js +1 -1
- package/dist/collection/components/business-forms/payment-provisioning/terms-and-conditions/business-terms-conditions-form-step.js +1 -1
- package/dist/collection/components/checkout/bank-account-form/bank-account-form.js +2 -2
- package/dist/collection/components/checkout/card-form/card-form.js +2 -2
- package/dist/collection/components/checkout/checkout.js +2 -2
- package/dist/collection/components/checkout/save-new-payment-method.js +1 -1
- package/dist/collection/components/checkout/saved-payment-method.js +1 -1
- package/dist/collection/components/checkouts-list/checkouts-list-core.js +1 -1
- package/dist/collection/components/checkouts-list/checkouts-list-filters.js +1 -1
- package/dist/collection/components/checkouts-list/checkouts-list.js +1 -1
- package/dist/collection/components/dispute-management/dispute-management-core.js +1 -1
- package/dist/collection/components/dispute-management/dispute-management.js +1 -1
- package/dist/collection/components/dispute-management/dispute-notification.js +2 -2
- package/dist/collection/components/dispute-management/dispute-response/additional-statement.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/cancellation-policy.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/customer-details.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/dispute-response-core.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/dispute-response.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/duplicate-charge.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/electronic-evidence.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/product-or-service.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/refund-policy.js +1 -1
- package/dist/collection/components/dispute-management/dispute-response/shipping-details.js +1 -1
- package/dist/collection/components/filters/table-filters-menu.js +1 -1
- package/dist/collection/components/gross-payment-chart/gross-payment-chart-core.js +1 -1
- package/dist/collection/components/modular-checkout/ModularCheckout.js +1 -0
- package/dist/collection/components/modular-checkout/modular-checkout.js +46 -9
- package/dist/collection/components/modular-checkout/sub-components/bank-account-billing-form-simple.js +1 -1
- package/dist/collection/components/modular-checkout/sub-components/bank-account.js +2 -2
- package/dist/collection/components/modular-checkout/sub-components/card-billing-form-simple.js +1 -1
- package/dist/collection/components/modular-checkout/sub-components/card-form.js +2 -2
- package/dist/collection/components/modular-checkout/sub-components/google-pay-skeleton.js +10 -0
- package/dist/collection/components/modular-checkout/sub-components/google-pay.js +609 -0
- package/dist/collection/components/modular-checkout/sub-components/payment-method-option.js +1 -1
- package/dist/collection/components/modular-checkout/sub-components/summary.js +1 -1
- package/dist/collection/components/order-terminals/order-terminals.js +1 -1
- package/dist/collection/components/order-terminals/terminal-quantity-selector/terminal-quantity-selector.js +1 -1
- package/dist/collection/components/payment-details/payment-details-core.js +8 -8
- package/dist/collection/components/payment-transactions-list/payment-transactions-list.js +1 -1
- package/dist/collection/components/payments-list/payments-list-core.js +1 -1
- package/dist/collection/components/payments-list/payments-list-filters.js +2 -2
- package/dist/collection/components/payments-list/payments-list.js +1 -1
- package/dist/collection/components/payout-details/payout-details-core.js +3 -3
- package/dist/collection/components/payout-transactions-list/payout-transactions-list.js +1 -1
- package/dist/collection/components/payouts-list/payouts-list-core.js +1 -1
- package/dist/collection/components/payouts-list/payouts-list-filters.js +2 -2
- package/dist/collection/components/payouts-list/payouts-list.js +1 -1
- package/dist/collection/components/terminal-orders-list/terminal-orders-list-core.js +1 -1
- package/dist/collection/components/terminal-orders-list/terminal-orders-list-filters.js +2 -2
- package/dist/collection/components/terminal-orders-list/terminal-orders-list.js +1 -1
- package/dist/collection/components/terminals-list/terminals-list-core.js +1 -1
- package/dist/collection/components/terminals-list/terminals-list-filters.js +1 -1
- package/dist/collection/components/terminals-list/terminals-list.js +1 -1
- package/dist/collection/components/tokenize-payment-method/internal-tokenize-payment-method.js +3 -4
- package/dist/collection/components/tokenize-payment-method/tokenize-payment-method.js +5 -10
- package/dist/collection/store/checkout.store.js +4 -0
- package/dist/collection/ui-components/custom-popper/custom-popper.js +2 -2
- package/dist/collection/ui-components/details/details.js +1 -1
- package/dist/collection/ui-components/form/form-control-checkbox.js +2 -2
- package/dist/collection/ui-components/form/form-control-date.js +2 -2
- package/dist/collection/ui-components/form/form-control-file-v2.js +1 -1
- package/dist/collection/ui-components/form/form-control-file.js +2 -2
- package/dist/collection/ui-components/form/form-control-monetary.js +2 -2
- package/dist/collection/ui-components/form/form-control-number-masked.js +2 -2
- package/dist/collection/ui-components/form/form-control-number.js +2 -2
- package/dist/collection/ui-components/form/form-control-radio.js +2 -2
- package/dist/collection/ui-components/form/form-control-select.js +2 -2
- package/dist/collection/ui-components/form/form-control-text.js +2 -2
- package/dist/collection/ui-components/form/form-control-textarea.js +2 -2
- package/dist/collection/ui-components/form/hidden-input.js +1 -1
- package/dist/collection/ui-components/form/iframe-input.js +3 -3
- package/dist/collection/ui-components/google-pay-button.js +255 -0
- package/dist/collection/ui-components/pagination-menu/pagination-menu.js +3 -3
- package/dist/collection/ui-components/shadow-dom-components/justifi-button.js +1 -1
- package/dist/collection/ui-components/shadow-dom-components/justifi-header.js +1 -1
- package/dist/collection/ui-components/shadow-dom-components/justifi-radio-list-item.js +1 -1
- package/dist/collection/ui-components/shadow-dom-components/justifi-skeleton.js +1 -1
- package/dist/docs.json +567 -119
- package/dist/esm/{Refund-L_muwEAh.js → GooglePay-ChLgDgG7.js} +405 -1
- package/dist/esm/bank-account-document-form-inputs_6.entry.js +8 -7
- package/dist/esm/bank-account-form.entry.js +2 -2
- package/dist/esm/{business.service-CaEVmi4X.js → business.service-C0JaOBMs.js} +1 -1
- package/dist/esm/card-form.entry.js +2 -2
- package/dist/esm/{check-pkg-version-DrJd3vkn.js → check-pkg-version-D0GWFnyL.js} +2 -2
- package/dist/esm/{checkout.service-BpaVN1_f.js → checkout.service-gxuAcx_d.js} +1 -1
- package/dist/esm/checkouts-list-core.entry.js +3 -2
- package/dist/esm/custom-popper.entry.js +2 -2
- package/dist/esm/{dispute.service-Dq1SPI2m.js → dispute.service-DmYLDaWO.js} +1 -1
- package/dist/esm/form-alert_5.entry.js +6 -6
- package/dist/esm/form-control-checkbox.entry.js +2 -2
- package/dist/esm/form-control-date.entry.js +2 -2
- package/dist/esm/form-control-file-v2_2.entry.js +3 -3
- package/dist/esm/form-control-monetary-provisioning.entry.js +2 -2
- package/dist/esm/form-control-monetary.entry.js +2 -2
- package/dist/esm/form-control-number-masked_3.entry.js +4 -4
- package/dist/esm/form-control-number.entry.js +2 -2
- package/dist/esm/form-control-radio.entry.js +2 -2
- package/dist/esm/form-control-select_3.entry.js +4 -4
- package/dist/esm/{get-payment-details-C2YiQBG7.js → get-payment-details-CJ6fHbft.js} +1 -1
- package/dist/esm/{get-subaccounts-Cjz3-2D3.js → get-subaccounts-3zYjlgWb.js} +1 -1
- package/dist/esm/gross-payment-chart-core.entry.js +1 -1
- package/dist/esm/hidden-input_2.entry.js +5 -5
- package/dist/esm/{index-DCIW8z1f.js → index-DkoufM1t.js} +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/internal-tokenize-payment-method_7.entry.js +12 -13
- package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +2 -1
- package/dist/esm/justifi-additional-questions-form-step_9.entry.js +12 -11
- package/dist/esm/justifi-additional-statement_8.entry.js +8 -8
- package/dist/esm/{justifi-apple-pay_7.entry.js → justifi-apple-pay_8.entry.js} +786 -137
- package/dist/esm/justifi-bank-account-billing-form-simple_3.entry.js +2 -2
- package/dist/esm/justifi-business-details.entry.js +5 -4
- package/dist/esm/justifi-business-form.entry.js +5 -4
- package/dist/esm/justifi-business-representative-form-inputs.entry.js +2 -2
- package/dist/esm/justifi-checkout.entry.js +7 -8
- package/dist/esm/justifi-checkouts-list-filters.entry.js +3 -2
- package/dist/esm/justifi-checkouts-list.entry.js +7 -6
- package/dist/esm/justifi-details.entry.js +1 -1
- package/dist/esm/justifi-dispute-management-core.entry.js +1 -1
- package/dist/esm/justifi-dispute-management.entry.js +6 -5
- package/dist/esm/justifi-dispute-notification_3.entry.js +9 -8
- package/dist/esm/justifi-gross-payment-chart.entry.js +4 -3
- package/dist/esm/justifi-order-terminals.entry.js +7 -6
- package/dist/esm/justifi-owner-form_3.entry.js +7 -6
- package/dist/esm/justifi-payment-details.entry.js +6 -5
- package/dist/esm/justifi-payment-provisioning-core.entry.js +1 -1
- package/dist/esm/justifi-payment-provisioning.entry.js +6 -5
- package/dist/esm/justifi-payment-transactions-list.entry.js +6 -5
- package/dist/esm/justifi-payments-list-filters.entry.js +2 -2
- package/dist/esm/justifi-payments-list.entry.js +6 -5
- package/dist/esm/justifi-payout-details.entry.js +5 -4
- package/dist/esm/justifi-payout-transactions-list.entry.js +6 -5
- package/dist/esm/justifi-payouts-list-filters.entry.js +2 -2
- package/dist/esm/justifi-payouts-list.entry.js +7 -6
- package/dist/esm/justifi-refund-payment.entry.js +6 -5
- package/dist/esm/justifi-saved-payment-method.entry.js +1 -1
- package/dist/esm/justifi-season-interruption-insurance.entry.js +4 -5
- package/dist/esm/justifi-skeleton.entry.js +1 -1
- package/dist/esm/justifi-terminal-orders-list-filters.entry.js +4 -3
- package/dist/esm/justifi-terminal-orders-list.entry.js +6 -5
- package/dist/esm/justifi-terminals-list-filters.entry.js +3 -2
- package/dist/esm/justifi-terminals-list.entry.js +7 -6
- package/dist/esm/justifi-tokenize-payment-method.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{package-DUwyoa82.js → package-DbqKgrF-.js} +1 -1
- package/dist/esm/pagination-menu.entry.js +3 -3
- package/dist/esm/payment-details-core.entry.js +10 -9
- package/dist/esm/payment-method-option.entry.js +1 -1
- package/dist/esm/{payment.service-4wGt-zDW.js → payment.service-CtzbcN40.js} +1 -1
- package/dist/esm/payments-list-core.entry.js +3 -2
- package/dist/esm/payout-details-core.entry.js +3 -3
- package/dist/esm/{payout.service-BYigYrQu.js → payout.service-BSepoyj1.js} +1 -1
- package/dist/esm/payouts-list-core.entry.js +3 -2
- package/dist/esm/table-filters-menu.entry.js +1 -1
- package/dist/esm/terminal-orders-list-core.entry.js +4 -3
- package/dist/esm/{terminal-orders-table-CMWBIr9y.js → terminal-orders-table-BDQyyZp2.js} +1 -1
- package/dist/esm/terminal-quantity-selector.entry.js +1 -1
- package/dist/esm/{terminal.service-RAu777Qf.js → terminal.service-DFPVyp0k.js} +1 -1
- package/dist/esm/terminals-list-core.entry.js +3 -2
- package/dist/esm/webcomponents.js +1 -1
- package/dist/module/Analytics.js +2 -0
- package/dist/module/ApplePay.js +121 -0
- package/dist/module/GooglePay.js +184 -0
- package/dist/module/ModularCheckout.js +1 -0
- package/dist/module/additional-questions.js +2 -2
- package/dist/module/additional-statement.js +1 -1
- package/dist/module/apple-pay.js +1 -120
- package/dist/module/bank-account-billing-form-simple.js +1 -1
- package/dist/module/bank-account-document-inputs.js +3 -1
- package/dist/module/bank-account-form-inputs-canada2.js +1 -1
- package/dist/module/bank-account-form-inputs2.js +1 -1
- package/dist/module/bank-account-form.js +2 -2
- package/dist/module/bank-account-read-only-value2.js +1 -1
- package/dist/module/bank-account.js +2 -2
- package/dist/module/business-additional-questions-form-step.js +1 -1
- package/dist/module/business-bank-account-form-step-core.js +2 -0
- package/dist/module/business-bank-account-form-step.js +3 -1
- package/dist/module/business-core-info-form-step.js +1 -1
- package/dist/module/business-core-info.js +2 -2
- package/dist/module/business-owners-form-step.js +1 -1
- package/dist/module/business-representative-form-inputs.js +2 -2
- package/dist/module/business-representative-form-step.js +1 -1
- package/dist/module/business-representative.js +3 -3
- package/dist/module/business-terms-conditions-form-step.js +3 -1
- package/dist/module/business.service.js +2 -0
- package/dist/module/cancellation-policy.js +1 -1
- package/dist/module/card-billing-form-simple.js +1 -1
- package/dist/module/card-form.js +2 -2
- package/dist/module/card-form2.js +2 -2
- package/dist/module/checkout.service.js +2 -0
- package/dist/module/checkout.store.js +4 -0
- package/dist/module/checkouts-list-core2.js +3 -1
- package/dist/module/custom-popper2.js +2 -2
- package/dist/module/customer-details.js +1 -1
- package/dist/module/details.js +1 -1
- package/dist/module/dispute-management-core.js +1 -1
- package/dist/module/dispute-notification.js +2 -2
- package/dist/module/dispute-response-actions.js +2 -0
- package/dist/module/dispute-response-core.js +1 -1
- package/dist/module/dispute-response.js +1 -1
- package/dist/module/duplicate-charge.js +1 -1
- package/dist/module/electronic-evidence.js +1 -1
- package/dist/module/form-address-fields.js +1 -1
- package/dist/module/form-control-checkbox2.js +2 -2
- package/dist/module/form-control-date2.js +2 -2
- package/dist/module/form-control-file-v22.js +1 -1
- package/dist/module/form-control-file2.js +2 -2
- package/dist/module/form-control-monetary-provisioning2.js +2 -2
- package/dist/module/form-control-monetary2.js +2 -2
- package/dist/module/form-control-number-masked2.js +2 -2
- package/dist/module/form-control-number.js +2 -2
- package/dist/module/form-control-radio2.js +2 -2
- package/dist/module/form-control-select2.js +2 -2
- package/dist/module/form-control-text2.js +2 -2
- package/dist/module/form-control-textarea2.js +2 -2
- package/dist/module/get-payment-details.js +2 -0
- package/dist/module/get-subaccounts.js +2 -0
- package/dist/module/google-pay.js +785 -0
- package/dist/module/gross-payment-chart-core2.js +1 -1
- package/dist/module/hidden-input2.js +1 -1
- package/dist/module/identity-address-form.js +1 -1
- package/dist/module/iframe-input2.js +3 -3
- package/dist/module/internal-tokenize-payment-method2.js +3 -1
- package/dist/module/justifi-business-form.js +2 -0
- package/dist/module/justifi-button2.js +1 -1
- package/dist/module/justifi-checkout.js +46 -40
- package/dist/module/justifi-checkouts-list-filters.js +3 -1
- package/dist/module/justifi-checkouts-list.js +3 -1
- package/dist/module/justifi-dispute-management.js +1 -1
- package/dist/module/justifi-google-pay.d.ts +11 -0
- package/dist/module/justifi-google-pay.js +6 -0
- package/dist/module/justifi-gross-payment-chart.js +2 -0
- package/dist/module/justifi-header2.js +1 -1
- package/dist/module/justifi-order-terminals.js +3 -1
- package/dist/module/justifi-payment-provisioning.js +3 -1
- package/dist/module/justifi-payment-transactions-list.js +3 -1
- package/dist/module/justifi-payments-list-filters.js +2 -2
- package/dist/module/justifi-payments-list.js +3 -1
- package/dist/module/justifi-payout-details.js +2 -0
- package/dist/module/justifi-payout-transactions-list.js +3 -1
- package/dist/module/justifi-payouts-list-filters.js +2 -2
- package/dist/module/justifi-payouts-list.js +3 -1
- package/dist/module/justifi-radio-list-item2.js +1 -1
- package/dist/module/justifi-refund-payment.js +2 -0
- package/dist/module/justifi-saved-payment-method.js +1 -1
- package/dist/module/justifi-season-interruption-insurance.js +2 -0
- package/dist/module/justifi-skeleton.js +1 -1
- package/dist/module/justifi-terminal-orders-list-filters.js +4 -2
- package/dist/module/justifi-terminal-orders-list.js +3 -1
- package/dist/module/justifi-terminals-list-filters.js +3 -1
- package/dist/module/justifi-terminals-list.js +3 -1
- package/dist/module/justifi-tokenize-payment-method.js +1 -1
- package/dist/module/legal-address-form-step.js +1 -1
- package/dist/module/legal-address-form.js +2 -2
- package/dist/module/modular-checkout.js +46 -6
- package/dist/module/owner-form-core2.js +1 -1
- package/dist/module/owner-form-inputs2.js +3 -3
- package/dist/module/owner-form.js +1 -1
- package/dist/module/package.js +1 -1
- package/dist/module/pagination-menu2.js +3 -3
- package/dist/module/payment-details-core2.js +10 -8
- package/dist/module/payment-method-option.js +1 -1
- package/dist/module/payment-provisioning-core.js +1 -1
- package/dist/module/payment-provisioning-form-buttons.js +1 -1
- package/dist/module/payment-provisioning-form-steps.js +1 -1
- package/dist/module/payment.service.js +2 -0
- package/dist/module/payments-list-core2.js +3 -1
- package/dist/module/payout-details-core2.js +3 -3
- package/dist/module/payout.service.js +2 -0
- package/dist/module/payouts-list-core2.js +3 -1
- package/dist/module/plaid.service.js +2 -0
- package/dist/module/product-or-service.js +1 -1
- package/dist/module/refund-policy.js +1 -1
- package/dist/module/save-new-payment-method.js +1 -1
- package/dist/module/shipping-details.js +1 -1
- package/dist/module/summary.js +1 -1
- package/dist/module/table-filters-menu2.js +1 -1
- package/dist/module/terminal-orders-list-core2.js +3 -1
- package/dist/module/terminal-quantity-selector2.js +1 -1
- package/dist/module/terminal.service.js +2 -0
- package/dist/module/terminals-list-core2.js +3 -1
- package/dist/types/api/Checkout.d.ts +2 -0
- package/dist/types/api/GooglePay.d.ts +271 -0
- package/dist/types/api/index.d.ts +2 -0
- package/dist/types/api/services/google-pay.service.d.ts +60 -0
- package/dist/types/components/business-forms/schemas/business-form-schema.d.ts +3 -3
- package/dist/types/components/checkout/checkout.d.ts +1 -0
- package/dist/types/components/modular-checkout/ModularCheckout.d.ts +2 -1
- package/dist/types/components/modular-checkout/modular-checkout.d.ts +5 -0
- package/dist/types/components/modular-checkout/sub-components/google-pay-skeleton.d.ts +6 -0
- package/dist/types/components/modular-checkout/sub-components/google-pay.d.ts +59 -0
- package/dist/types/components/tokenize-payment-method/tokenize-payment-method.d.ts +1 -1
- package/dist/types/components.d.ts +160 -22
- package/dist/types/store/checkout.store.d.ts +1 -0
- package/dist/types/ui-components/google-pay-button.d.ts +18 -0
- package/dist/webcomponents/index.esm.js +1 -1
- package/dist/webcomponents/{p-aec9185f.entry.js → p-03c8c754.entry.js} +1 -1
- package/dist/webcomponents/p-0772719b.entry.js +1 -0
- package/dist/webcomponents/p-10df10cb.entry.js +1 -0
- package/dist/webcomponents/p-1120699e.entry.js +1 -0
- package/dist/webcomponents/p-136b29e3.entry.js +1 -0
- package/dist/webcomponents/{p-1193a1ac.entry.js → p-19dabeab.entry.js} +1 -1
- package/dist/webcomponents/p-19f44a6d.entry.js +1 -0
- package/dist/webcomponents/p-1a9311e3.entry.js +1 -0
- package/dist/webcomponents/p-1afcfafd.entry.js +1 -0
- package/dist/webcomponents/p-1ceb7363.entry.js +1 -0
- package/dist/webcomponents/p-1f196690.entry.js +1 -0
- package/dist/webcomponents/{p-800660f2.entry.js → p-270bf699.entry.js} +1 -1
- package/dist/webcomponents/p-2da4e6ca.entry.js +1 -0
- package/dist/webcomponents/p-2eb123a3.entry.js +1 -0
- package/dist/webcomponents/p-36ad1db9.entry.js +1 -0
- package/dist/webcomponents/p-38626adf.entry.js +1 -0
- package/dist/webcomponents/p-3868f396.entry.js +1 -0
- package/dist/webcomponents/p-3ac5ab7e.entry.js +1 -0
- package/dist/webcomponents/p-3ad906c1.entry.js +1 -0
- package/dist/webcomponents/p-3ae12b98.entry.js +1 -0
- package/dist/webcomponents/{p-58ae4f9e.entry.js → p-3bacf834.entry.js} +1 -1
- package/dist/webcomponents/{p-e2e6c201.entry.js → p-48d1bc83.entry.js} +1 -1
- package/dist/webcomponents/{p-af48a6bb.entry.js → p-4e71de94.entry.js} +1 -1
- package/dist/webcomponents/p-4f102cfd.entry.js +1 -0
- package/dist/webcomponents/p-4f82561b.entry.js +1 -0
- package/dist/webcomponents/p-51ae205c.entry.js +1 -0
- package/dist/webcomponents/p-583a1f08.entry.js +1 -0
- package/dist/webcomponents/p-59fb033b.entry.js +1 -0
- package/dist/webcomponents/p-5ba28ff0.entry.js +1 -0
- package/dist/webcomponents/p-6794a435.entry.js +1 -0
- package/dist/webcomponents/p-797be4be.entry.js +1 -0
- package/dist/webcomponents/{p-CxPieTnF.js → p-7SgMy3r5.js} +1 -1
- package/dist/webcomponents/p-81c1ebd3.entry.js +1 -0
- package/dist/webcomponents/{p-1edec396.entry.js → p-86111a0a.entry.js} +1 -1
- package/dist/webcomponents/p-8b6b7e20.entry.js +1 -0
- package/dist/webcomponents/p-8fcd277c.entry.js +1 -0
- package/dist/webcomponents/p-90744983.entry.js +1 -0
- package/dist/webcomponents/p-914b590d.entry.js +1 -0
- package/dist/webcomponents/{p-BItPr6Gj.js → p-B-9GGR7s.js} +1 -1
- package/dist/webcomponents/p-Boe55CYS.js +1 -0
- package/dist/webcomponents/{p-Do561C8g.js → p-BusXmwDe.js} +1 -1
- package/dist/webcomponents/{p-C9_8N76_.js → p-ByJiG6HY.js} +1 -1
- package/dist/webcomponents/{p-XqsvHFg_.js → p-C6kJ3uRN.js} +1 -1
- package/dist/webcomponents/p-CQsNLuzi.js +1 -0
- package/dist/webcomponents/{p-ZrJKEEoy.js → p-DELUWNSY.js} +1 -1
- package/dist/webcomponents/p-DbqKgrF-.js +1 -0
- package/dist/webcomponents/{p-wYnnDDuR.js → p-DjhbNep7.js} +1 -1
- package/dist/webcomponents/p-DkoufM1t.js +1 -0
- package/dist/webcomponents/{p-CriWtqRc.js → p-Ds2u5A8P.js} +1 -1
- package/dist/webcomponents/{p-jTVpG8Gt.js → p-E0ZPuuI7.js} +1 -1
- package/dist/webcomponents/p-a020c889.entry.js +1 -0
- package/dist/webcomponents/{p-0082f428.entry.js → p-a22d1078.entry.js} +1 -1
- package/dist/webcomponents/p-a6e816f6.entry.js +1 -0
- package/dist/webcomponents/{p-8681f258.entry.js → p-aaed4997.entry.js} +1 -1
- package/dist/webcomponents/p-ad9307c1.entry.js +1 -0
- package/dist/webcomponents/p-b36d9885.entry.js +1 -0
- package/dist/webcomponents/p-b46223fa.entry.js +1 -0
- package/dist/webcomponents/p-ba76226e.entry.js +1 -0
- package/dist/webcomponents/{p-e23219c6.entry.js → p-bbc42ab9.entry.js} +1 -1
- package/dist/webcomponents/p-bc510a8a.entry.js +1 -0
- package/dist/webcomponents/p-be3caaf8.entry.js +1 -0
- package/dist/webcomponents/p-c11f5079.entry.js +1 -0
- package/dist/webcomponents/p-c41191e7.entry.js +1 -0
- package/dist/webcomponents/p-c621e7af.entry.js +1 -0
- package/dist/webcomponents/p-d13edf9f.entry.js +1 -0
- package/dist/webcomponents/p-d4503c9a.entry.js +1 -0
- package/dist/webcomponents/p-d913cb6b.entry.js +1 -0
- package/dist/webcomponents/p-e016bb2e.entry.js +1 -0
- package/dist/webcomponents/{p-2769f945.entry.js → p-e6507b93.entry.js} +1 -1
- package/dist/webcomponents/{p-ed55d333.entry.js → p-e7e5fee9.entry.js} +1 -1
- package/dist/webcomponents/{p-4e23116c.entry.js → p-f2650bfc.entry.js} +1 -1
- package/dist/webcomponents/p-f42c68b0.entry.js +1 -0
- package/dist/webcomponents/p-f4cb581f.entry.js +1 -0
- package/dist/webcomponents/p-f528da70.entry.js +1 -0
- package/dist/webcomponents/p-f632894a.entry.js +1 -0
- package/dist/webcomponents/p-f66de935.entry.js +1 -0
- package/dist/webcomponents/p-fc9d0344.entry.js +1 -0
- package/dist/webcomponents/{p-9f70ce93.entry.js → p-fe862786.entry.js} +1 -1
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +13 -13
- package/LICENSE +0 -21
- package/dist/cjs/checkout.store-BA6h-dp2.js +0 -107
- package/dist/esm/checkout.store-CaS_htQd.js +0 -101
- package/dist/webcomponents/p-087a81ff.entry.js +0 -1
- package/dist/webcomponents/p-1242bbf1.entry.js +0 -1
- package/dist/webcomponents/p-14d2f6c6.entry.js +0 -1
- package/dist/webcomponents/p-170700b1.entry.js +0 -1
- package/dist/webcomponents/p-1939d1e3.entry.js +0 -1
- package/dist/webcomponents/p-20a8b0c0.entry.js +0 -1
- package/dist/webcomponents/p-22f74666.entry.js +0 -1
- package/dist/webcomponents/p-30f61f44.entry.js +0 -1
- package/dist/webcomponents/p-3b49fc33.entry.js +0 -1
- package/dist/webcomponents/p-3c38cec5.entry.js +0 -1
- package/dist/webcomponents/p-45936490.entry.js +0 -1
- package/dist/webcomponents/p-4761e0aa.entry.js +0 -1
- package/dist/webcomponents/p-4c3eea2b.entry.js +0 -1
- package/dist/webcomponents/p-4da3e157.entry.js +0 -1
- package/dist/webcomponents/p-4dcbc0af.entry.js +0 -1
- package/dist/webcomponents/p-58dee174.entry.js +0 -1
- package/dist/webcomponents/p-69195676.entry.js +0 -1
- package/dist/webcomponents/p-716ddc27.entry.js +0 -1
- package/dist/webcomponents/p-7218c312.entry.js +0 -1
- package/dist/webcomponents/p-75c65531.entry.js +0 -1
- package/dist/webcomponents/p-8432a466.entry.js +0 -1
- package/dist/webcomponents/p-84a44362.entry.js +0 -1
- package/dist/webcomponents/p-84e2bd93.entry.js +0 -1
- package/dist/webcomponents/p-89518b26.entry.js +0 -1
- package/dist/webcomponents/p-8b2026d3.entry.js +0 -1
- package/dist/webcomponents/p-9d914297.entry.js +0 -1
- package/dist/webcomponents/p-CPKSE7M4.js +0 -1
- package/dist/webcomponents/p-D0YDz3L6.js +0 -1
- package/dist/webcomponents/p-DCIW8z1f.js +0 -1
- package/dist/webcomponents/p-DU8dqq9U.js +0 -1
- package/dist/webcomponents/p-DUwyoa82.js +0 -1
- package/dist/webcomponents/p-a655b996.entry.js +0 -1
- package/dist/webcomponents/p-a8f7cf9b.entry.js +0 -1
- package/dist/webcomponents/p-aa51df2c.entry.js +0 -1
- package/dist/webcomponents/p-ae7a027b.entry.js +0 -1
- package/dist/webcomponents/p-b4d8a3f6.entry.js +0 -1
- package/dist/webcomponents/p-bd73fba1.entry.js +0 -1
- package/dist/webcomponents/p-c1831747.entry.js +0 -1
- package/dist/webcomponents/p-c3b71a1f.entry.js +0 -1
- package/dist/webcomponents/p-c7279bc6.entry.js +0 -1
- package/dist/webcomponents/p-c7bfea00.entry.js +0 -1
- package/dist/webcomponents/p-c7f2cf51.entry.js +0 -1
- package/dist/webcomponents/p-c988bd84.entry.js +0 -1
- package/dist/webcomponents/p-cef213c3.entry.js +0 -1
- package/dist/webcomponents/p-d4b8274f.entry.js +0 -1
- package/dist/webcomponents/p-db651f27.entry.js +0 -1
- package/dist/webcomponents/p-dc0d3484.entry.js +0 -1
- package/dist/webcomponents/p-def857b8.entry.js +0 -1
- package/dist/webcomponents/p-df0e5377.entry.js +0 -1
- package/dist/webcomponents/p-e5caab42.entry.js +0 -1
- package/dist/webcomponents/p-eb56ba9b.entry.js +0 -1
- package/dist/webcomponents/p-edcb84bf.entry.js +0 -1
- package/dist/webcomponents/p-f1af630f.entry.js +0 -1
- package/dist/webcomponents/p-f5fb1af2.entry.js +0 -1
- package/dist/webcomponents/p-fab28b02.entry.js +0 -1
- package/dist/webcomponents/p-ff968ab6.entry.js +0 -1
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { checkoutStore } from "../store/checkout.store";
|
|
2
|
+
export var GooglePayButtonType;
|
|
3
|
+
(function (GooglePayButtonType) {
|
|
4
|
+
GooglePayButtonType["PLAIN"] = "plain";
|
|
5
|
+
GooglePayButtonType["BUY"] = "buy";
|
|
6
|
+
GooglePayButtonType["BOOK"] = "book";
|
|
7
|
+
GooglePayButtonType["CHECKOUT"] = "checkout";
|
|
8
|
+
GooglePayButtonType["DONATE"] = "donate";
|
|
9
|
+
GooglePayButtonType["ORDER"] = "order";
|
|
10
|
+
GooglePayButtonType["PAY"] = "pay";
|
|
11
|
+
GooglePayButtonType["SUBSCRIBE"] = "subscribe";
|
|
12
|
+
})(GooglePayButtonType || (GooglePayButtonType = {}));
|
|
13
|
+
export var GooglePayButtonStyle;
|
|
14
|
+
(function (GooglePayButtonStyle) {
|
|
15
|
+
GooglePayButtonStyle["BLACK"] = "black";
|
|
16
|
+
GooglePayButtonStyle["WHITE"] = "white";
|
|
17
|
+
})(GooglePayButtonStyle || (GooglePayButtonStyle = {}));
|
|
18
|
+
export var GooglePayButtonSizeMode;
|
|
19
|
+
(function (GooglePayButtonSizeMode) {
|
|
20
|
+
GooglePayButtonSizeMode["STATIC"] = "static";
|
|
21
|
+
GooglePayButtonSizeMode["FILL"] = "fill";
|
|
22
|
+
})(GooglePayButtonSizeMode || (GooglePayButtonSizeMode = {}));
|
|
23
|
+
export var GooglePayEnvironment;
|
|
24
|
+
(function (GooglePayEnvironment) {
|
|
25
|
+
GooglePayEnvironment["PRODUCTION"] = "PRODUCTION";
|
|
26
|
+
GooglePayEnvironment["TEST"] = "TEST";
|
|
27
|
+
})(GooglePayEnvironment || (GooglePayEnvironment = {}));
|
|
28
|
+
export class GooglePayConfig {
|
|
29
|
+
constructor(data) {
|
|
30
|
+
this.environment = data.environment;
|
|
31
|
+
this.merchantId = data.merchantId;
|
|
32
|
+
this.merchantName = data.merchantName;
|
|
33
|
+
this.buttonType = data.buttonType || GooglePayButtonType.PLAIN;
|
|
34
|
+
this.buttonStyle = data.buttonStyle || GooglePayButtonStyle.BLACK;
|
|
35
|
+
this.buttonSizeMode = data.buttonSizeMode || GooglePayButtonSizeMode.STATIC;
|
|
36
|
+
this.buttonLocale = data.buttonLocale || 'en';
|
|
37
|
+
}
|
|
38
|
+
get isValid() {
|
|
39
|
+
return !!(this.environment && this.merchantName);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export class GooglePayPaymentDataRequest {
|
|
43
|
+
constructor(data) {
|
|
44
|
+
this.apiVersion = data.apiVersion;
|
|
45
|
+
this.apiVersionMinor = data.apiVersionMinor;
|
|
46
|
+
this.allowedPaymentMethods = data.allowedPaymentMethods;
|
|
47
|
+
this.transactionInfo = data.transactionInfo;
|
|
48
|
+
this.merchantInfo = data.merchantInfo;
|
|
49
|
+
this.callbackIntents = data.callbackIntents;
|
|
50
|
+
this.shippingAddressRequired = data.shippingAddressRequired;
|
|
51
|
+
this.shippingAddressParameters = data.shippingAddressParameters;
|
|
52
|
+
this.emailRequired = data.emailRequired;
|
|
53
|
+
}
|
|
54
|
+
get isValid() {
|
|
55
|
+
var _a, _b, _c, _d;
|
|
56
|
+
const hasApiVersion = typeof this.apiVersion === 'number' && this.apiVersion > 0;
|
|
57
|
+
const hasApiVersionMinor = typeof this.apiVersionMinor === 'number' && this.apiVersionMinor >= 0;
|
|
58
|
+
const hasAllowedMethods = Array.isArray(this.allowedPaymentMethods) &&
|
|
59
|
+
this.allowedPaymentMethods.length > 0;
|
|
60
|
+
const hasTxnCountry = Boolean((_a = this.transactionInfo) === null || _a === void 0 ? void 0 : _a.countryCode);
|
|
61
|
+
const hasTxnCurrency = Boolean((_b = this.transactionInfo) === null || _b === void 0 ? void 0 : _b.currencyCode);
|
|
62
|
+
const hasTxnTotal = Boolean((_c = this.transactionInfo) === null || _c === void 0 ? void 0 : _c.totalPrice);
|
|
63
|
+
const hasMerchantName = Boolean((_d = this.merchantInfo) === null || _d === void 0 ? void 0 : _d.merchantName);
|
|
64
|
+
return (hasApiVersion &&
|
|
65
|
+
hasApiVersionMinor &&
|
|
66
|
+
hasAllowedMethods &&
|
|
67
|
+
hasTxnCountry &&
|
|
68
|
+
hasTxnCurrency &&
|
|
69
|
+
hasTxnTotal &&
|
|
70
|
+
hasMerchantName);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
export class GooglePayHelpers {
|
|
74
|
+
/**
|
|
75
|
+
* Check if Google Pay is supported in the current environment
|
|
76
|
+
*/
|
|
77
|
+
static isGooglePaySupported() {
|
|
78
|
+
return (typeof window !== 'undefined' &&
|
|
79
|
+
'google' in window &&
|
|
80
|
+
'payments' in window.google &&
|
|
81
|
+
'api' in window.google.payments);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Create a Google Pay client instance
|
|
85
|
+
*/
|
|
86
|
+
static createGooglePayClient(environment) {
|
|
87
|
+
if (!this.isGooglePaySupported()) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
try {
|
|
91
|
+
return new window.google.payments.api.PaymentsClient({
|
|
92
|
+
environment: environment === GooglePayEnvironment.PRODUCTION
|
|
93
|
+
? 'PRODUCTION'
|
|
94
|
+
: 'TEST',
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
catch (_error) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Format amount for Google Pay (expects string in full currency units)
|
|
103
|
+
*/
|
|
104
|
+
static formatAmount(amount) {
|
|
105
|
+
return (amount / 100).toFixed(2);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Parse amount from Google Pay format to cents
|
|
109
|
+
*/
|
|
110
|
+
static parseAmount(amount) {
|
|
111
|
+
return Math.round(parseFloat(amount) * 100);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Create a line item for Google Pay
|
|
115
|
+
*/
|
|
116
|
+
static createLineItem(label, amount, type = 'LINE_ITEM') {
|
|
117
|
+
return {
|
|
118
|
+
label,
|
|
119
|
+
price: this.formatAmount(amount),
|
|
120
|
+
type,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get default supported card networks
|
|
125
|
+
*/
|
|
126
|
+
static getDefaultSupportedNetworks() {
|
|
127
|
+
return ['VISA', 'MASTERCARD', 'AMEX', 'DISCOVER'];
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Get default allowed authentication methods
|
|
131
|
+
*/
|
|
132
|
+
static getDefaultAuthMethods() {
|
|
133
|
+
return ['PAN_ONLY', 'CRYPTOGRAM_3DS'];
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Create default card parameters
|
|
137
|
+
*/
|
|
138
|
+
static createDefaultCardParameters() {
|
|
139
|
+
return {
|
|
140
|
+
allowedAuthMethods: this.getDefaultAuthMethods(),
|
|
141
|
+
allowedCardNetworks: this.getDefaultSupportedNetworks(),
|
|
142
|
+
billingAddressRequired: false,
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Create default tokenization specification
|
|
147
|
+
*/
|
|
148
|
+
static createTokenizationSpecification() {
|
|
149
|
+
return {
|
|
150
|
+
type: 'PAYMENT_GATEWAY',
|
|
151
|
+
parameters: {
|
|
152
|
+
gateway: 'justifi',
|
|
153
|
+
gatewayMerchantId: checkoutStore.accountId,
|
|
154
|
+
},
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Create default payment method data
|
|
159
|
+
*/
|
|
160
|
+
static createPaymentMethodData() {
|
|
161
|
+
return {
|
|
162
|
+
type: 'CARD',
|
|
163
|
+
parameters: this.createDefaultCardParameters(),
|
|
164
|
+
tokenizationSpecification: this.createTokenizationSpecification(),
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Create base payment data request check
|
|
169
|
+
*/
|
|
170
|
+
static createBasePaymentDataRequest() {
|
|
171
|
+
const base = {
|
|
172
|
+
apiVersion: 2,
|
|
173
|
+
apiVersionMinor: 0,
|
|
174
|
+
allowedPaymentMethods: [this.createPaymentMethodData()],
|
|
175
|
+
};
|
|
176
|
+
// For development and broader availability of the button, do not require an existing card
|
|
177
|
+
// This allows isReadyToPay to return true on supported browsers even without a saved payment method
|
|
178
|
+
base.existingPaymentMethodRequired = false;
|
|
179
|
+
return base;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
@@ -18,5 +18,7 @@ export * from './Business';
|
|
|
18
18
|
export * from './Identity';
|
|
19
19
|
export * from './Dispute';
|
|
20
20
|
export * from './GrossVolume';
|
|
21
|
+
export * from './ApplePay';
|
|
22
|
+
export * from './GooglePay';
|
|
21
23
|
// In a future PR I would like to update the naming of the BankAccount Payment Method class in Payment.ts so this import can be updated to be written the same as the others in this file.
|
|
22
24
|
export { BankAccount } from './BankAccount';
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { Api } from "../Api";
|
|
2
|
+
import { GooglePayHelpers, GooglePayConfig, GooglePayPaymentDataRequest, } from "../GooglePay";
|
|
3
|
+
const PROCESS_TOKEN_ENDPOINT = 'google_pay/process_token';
|
|
4
|
+
export class GooglePayService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.api = Api();
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Initialize Google Pay configuration
|
|
10
|
+
*/
|
|
11
|
+
initialize(googlePayConfig) {
|
|
12
|
+
this.googlePayConfig = new GooglePayConfig(googlePayConfig);
|
|
13
|
+
if (!this.googlePayConfig.isValid) {
|
|
14
|
+
throw new Error('Invalid Google Pay configuration provided');
|
|
15
|
+
}
|
|
16
|
+
// Create Google Pay client
|
|
17
|
+
this.googlePayClient = GooglePayHelpers.createGooglePayClient(this.googlePayConfig.environment);
|
|
18
|
+
if (!this.googlePayClient) {
|
|
19
|
+
throw new Error('Failed to create Google Pay client');
|
|
20
|
+
}
|
|
21
|
+
// No debug logs
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Process Google Pay payment via API
|
|
25
|
+
*/
|
|
26
|
+
async processPayment(authToken, accountId, payload) {
|
|
27
|
+
const endpoint = PROCESS_TOKEN_ENDPOINT;
|
|
28
|
+
try {
|
|
29
|
+
const result = await this.api.post({
|
|
30
|
+
endpoint,
|
|
31
|
+
authToken,
|
|
32
|
+
body: payload,
|
|
33
|
+
headers: {
|
|
34
|
+
'sub-account': accountId,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
return {
|
|
38
|
+
success: result.id && !!result.data.token,
|
|
39
|
+
data: result,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
catch (_error) {
|
|
43
|
+
throw new Error('Google Pay payment processing failed');
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Check if Google Pay is available on this device/browser
|
|
48
|
+
*/
|
|
49
|
+
isAvailable() {
|
|
50
|
+
return GooglePayHelpers.isGooglePaySupported() && !!this.googlePayClient;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Check if the user can make payments with Google Pay
|
|
54
|
+
*/
|
|
55
|
+
async canMakePayments() {
|
|
56
|
+
if (!this.googlePayClient || !this.googlePayConfig) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
const baseRequest = GooglePayHelpers.createBasePaymentDataRequest();
|
|
61
|
+
const response = await this.googlePayClient.isReadyToPay(baseRequest);
|
|
62
|
+
return response.result;
|
|
63
|
+
}
|
|
64
|
+
catch (_error) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Start Google Pay payment session
|
|
70
|
+
*/
|
|
71
|
+
async startPaymentSession(paymentDataRequest, authToken, accountId) {
|
|
72
|
+
var _a;
|
|
73
|
+
if (!this.googlePayConfig || !this.googlePayClient) {
|
|
74
|
+
throw new Error('Google Pay not initialized. Call initialize() first.');
|
|
75
|
+
}
|
|
76
|
+
if (!this.isAvailable()) {
|
|
77
|
+
throw new Error('Google Pay is not available on this device/browser');
|
|
78
|
+
}
|
|
79
|
+
const request = new GooglePayPaymentDataRequest(paymentDataRequest);
|
|
80
|
+
if (!request.isValid) {
|
|
81
|
+
throw new Error('Invalid payment data request provided');
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
const paymentData = await this.googlePayClient.loadPaymentData(request);
|
|
85
|
+
// Build top-level snake_case fields from Google Pay tokenizationData
|
|
86
|
+
const tokenizationData = (_a = paymentData === null || paymentData === void 0 ? void 0 : paymentData.paymentMethodData) === null || _a === void 0 ? void 0 : _a.tokenizationData;
|
|
87
|
+
const tokenObj = (() => {
|
|
88
|
+
if ((tokenizationData === null || tokenizationData === void 0 ? void 0 : tokenizationData.token) &&
|
|
89
|
+
typeof tokenizationData.token === 'string') {
|
|
90
|
+
try {
|
|
91
|
+
return JSON.parse(tokenizationData.token);
|
|
92
|
+
}
|
|
93
|
+
catch (_e) {
|
|
94
|
+
return tokenizationData;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return tokenizationData;
|
|
98
|
+
})();
|
|
99
|
+
const tokenProcessRequest = {
|
|
100
|
+
protocolVersion: tokenObj === null || tokenObj === void 0 ? void 0 : tokenObj.protocolVersion,
|
|
101
|
+
signature: tokenObj === null || tokenObj === void 0 ? void 0 : tokenObj.signature,
|
|
102
|
+
intermediateSigningKey: (tokenObj === null || tokenObj === void 0 ? void 0 : tokenObj.intermediateSigningKey)
|
|
103
|
+
? {
|
|
104
|
+
signedKey: tokenObj.intermediateSigningKey.signedKey,
|
|
105
|
+
signatures: tokenObj.intermediateSigningKey.signatures,
|
|
106
|
+
}
|
|
107
|
+
: undefined,
|
|
108
|
+
signedMessage: tokenObj === null || tokenObj === void 0 ? void 0 : tokenObj.signedMessage,
|
|
109
|
+
};
|
|
110
|
+
const paymentResult = await this.processPayment(authToken, accountId, tokenProcessRequest);
|
|
111
|
+
if (paymentResult.success) {
|
|
112
|
+
return {
|
|
113
|
+
success: true,
|
|
114
|
+
paymentData: paymentData,
|
|
115
|
+
paymentMethodId: paymentResult.data.id,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
return {
|
|
120
|
+
success: false,
|
|
121
|
+
error: {
|
|
122
|
+
code: 'PAYMENT_PROCESSING_ERROR',
|
|
123
|
+
message: 'Payment processing failed',
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
catch (error) {
|
|
129
|
+
// Handle different types of errors
|
|
130
|
+
if (error && typeof error === 'object' && 'statusCode' in error) {
|
|
131
|
+
const googlePayError = error;
|
|
132
|
+
switch (googlePayError.statusCode) {
|
|
133
|
+
case 'CANCELED':
|
|
134
|
+
return {
|
|
135
|
+
success: false,
|
|
136
|
+
error: {
|
|
137
|
+
code: 'USER_CANCELLED',
|
|
138
|
+
message: 'User cancelled the Google Pay session',
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
case 'DEVELOPER_ERROR':
|
|
142
|
+
return {
|
|
143
|
+
success: false,
|
|
144
|
+
error: {
|
|
145
|
+
code: 'DEVELOPER_ERROR',
|
|
146
|
+
message: 'Google Pay configuration error',
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
default:
|
|
150
|
+
return {
|
|
151
|
+
success: false,
|
|
152
|
+
error: {
|
|
153
|
+
code: 'PAYMENT_ERROR',
|
|
154
|
+
message: googlePayError.statusMessage || 'Google Pay payment failed',
|
|
155
|
+
},
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return {
|
|
160
|
+
success: false,
|
|
161
|
+
error: {
|
|
162
|
+
code: 'PAYMENT_ERROR',
|
|
163
|
+
message: error instanceof Error
|
|
164
|
+
? error.message
|
|
165
|
+
: 'Google Pay payment failed',
|
|
166
|
+
},
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Create Google Pay button element
|
|
172
|
+
*/
|
|
173
|
+
createButton(options) {
|
|
174
|
+
if (!this.googlePayClient || !this.googlePayConfig) {
|
|
175
|
+
return null;
|
|
176
|
+
}
|
|
177
|
+
try {
|
|
178
|
+
return this.googlePayClient.createButton({
|
|
179
|
+
onClick: options.onClick,
|
|
180
|
+
buttonType: options.buttonType,
|
|
181
|
+
buttonSizeMode: options.buttonSizeMode,
|
|
182
|
+
buttonColor: options.buttonColor,
|
|
183
|
+
buttonLocale: options.buttonLocale,
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
catch (_error) {
|
|
187
|
+
return null;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Prefetch payment data for faster loading
|
|
192
|
+
*/
|
|
193
|
+
prefetchPaymentData(paymentDataRequest) {
|
|
194
|
+
if (!this.googlePayClient) {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const request = new GooglePayPaymentDataRequest(paymentDataRequest);
|
|
198
|
+
if (!request.isValid) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
try {
|
|
202
|
+
this.googlePayClient.prefetchPaymentData(request);
|
|
203
|
+
}
|
|
204
|
+
catch (_error) { }
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Create a basic payment data request
|
|
208
|
+
*/
|
|
209
|
+
static createPaymentDataRequest(amount, label, countryCode = 'US', currencyCode = 'USD', merchantName) {
|
|
210
|
+
const request = {
|
|
211
|
+
apiVersion: 2,
|
|
212
|
+
apiVersionMinor: 0,
|
|
213
|
+
allowedPaymentMethods: [GooglePayHelpers.createPaymentMethodData()],
|
|
214
|
+
transactionInfo: {
|
|
215
|
+
countryCode,
|
|
216
|
+
currencyCode,
|
|
217
|
+
totalPriceStatus: 'FINAL',
|
|
218
|
+
totalPrice: GooglePayHelpers.formatAmount(amount),
|
|
219
|
+
totalPriceLabel: label,
|
|
220
|
+
},
|
|
221
|
+
merchantInfo: {
|
|
222
|
+
merchantName,
|
|
223
|
+
},
|
|
224
|
+
};
|
|
225
|
+
// No debug logs
|
|
226
|
+
return request;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Get current configuration
|
|
230
|
+
*/
|
|
231
|
+
getGooglePayConfig() {
|
|
232
|
+
return this.googlePayConfig;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Get current Google Pay client
|
|
236
|
+
*/
|
|
237
|
+
getGooglePayClient() {
|
|
238
|
+
return this.googlePayClient;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
"entries": [
|
|
3
|
-
"ui-components/pagination-menu/pagination-menu.js",
|
|
4
3
|
"ui-components/details/details.js",
|
|
5
4
|
"ui-components/shadow-dom-components/justifi-radio-list-item.js",
|
|
6
5
|
"components/business-details/business-details-core.js",
|
|
@@ -57,6 +56,7 @@
|
|
|
57
56
|
"components/checkouts-list/checkouts-list-core.js",
|
|
58
57
|
"components/checkouts-list/checkouts-list-filters.js",
|
|
59
58
|
"components/checkouts-list/checkouts-list.js",
|
|
59
|
+
"ui-components/pagination-menu/pagination-menu.js",
|
|
60
60
|
"components/filters/table-filters-menu.js",
|
|
61
61
|
"ui-components/form/form-control-select.js",
|
|
62
62
|
"components/config-provider/config-provider.js",
|
|
@@ -80,6 +80,7 @@
|
|
|
80
80
|
"components/modular-checkout/sub-components/apple-pay.js",
|
|
81
81
|
"components/modular-checkout/sub-components/bank-account.js",
|
|
82
82
|
"components/modular-checkout/sub-components/card-form.js",
|
|
83
|
+
"components/modular-checkout/sub-components/google-pay.js",
|
|
83
84
|
"components/modular-checkout/sub-components/payment-method-option.js",
|
|
84
85
|
"components/modular-checkout/sub-components/plaid-payment-method.js",
|
|
85
86
|
"components/modular-checkout/sub-components/saved-payment-methods.js",
|
|
@@ -18,22 +18,21 @@ export class AdditionalQuestions {
|
|
|
18
18
|
render() {
|
|
19
19
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
20
20
|
const additionalQuestionsDefaultValue = this.formController.getInitialValues().additional_questions;
|
|
21
|
-
return (h(Host, { key: '
|
|
21
|
+
return (h(Host, { key: '8f51222ff2a06a8636c2252a1df25803c464cd5a' }, h("fieldset", { key: 'c705274cb9e5cc651f8cedb5ac23714a75dca09a' }, h("legend", { key: '0e865f2763c872ccd65c7d255e0a49533bf8afbe', part: heading2 }, "Additional Questions"), h("div", { key: 'b5a9d2c8086820d837a6261c0fbbd1c4785e8cbe', class: "row gy-3" }, h("div", { key: 'b0174e926ef2726d9c1ce809d00cf8fef623207c', class: "col-12 col-md-6" }, h("form-control-monetary-provisioning", { key: '5553ed9ca690b4b7a54dfe864225fb4e10987c96', name: "business_revenue", label: "What is the business' estimated annual revenue from its primary business activities?", inputHandler: this.inputHandler, errorText: (_b = (_a = this.errors) === null || _a === void 0 ? void 0 : _a.additional_questions) === null || _b === void 0 ? void 0 : _b.business_revenue, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_revenue, maskOptions: CURRENCY_MASK.WHOLE })), h("div", { key: 'a01e709a65772041979e7b8c057b271e26524174', class: "col-12 col-md-6" }, h("form-control-monetary-provisioning", { key: '2e56403c3eb357dac7f6791e0c5fa4fca58e6cfb', name: "business_payment_volume", label: "What is the business' annual credit card & ACH volume anticipated to process?", inputHandler: this.inputHandler, errorText: (_d = (_c = this.errors) === null || _c === void 0 ? void 0 : _c.additional_questions) === null || _d === void 0 ? void 0 : _d.business_payment_volume, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_payment_volume, maskOptions: CURRENCY_MASK.WHOLE })), h("div", { key: '74318a7f6fdcc265d96827e5fb02d797631b3fd5', class: "col-12" }, h("form-control-select", { key: 'd166c9a1951afc9e1876d078ddc026671e8e0dcc', name: 'business_when_service_received', label: 'On average, how long after paying will your customers typically receive their goods or services?', inputHandler: this.inputHandler, errorText: (_f = (_e = this.errors) === null || _e === void 0 ? void 0 : _e.additional_questions) === null || _f === void 0 ? void 0 : _f.business_when_service_received, options: businessServiceReceivedOptions, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_when_service_received })), h("div", { key: 'e47aefb3a2274244d3e2561da7cfecb203445f1e', class: "col-12" }, h("form-control-select", { key: '33978d0af775cace90de84104f74b2d6c22ae1c0', name: 'business_recurring_payments', label: 'Does your business offer recurring payments?', inputHandler: this.inputHandler, errorText: (_h = (_g = this.errors) === null || _g === void 0 ? void 0 : _g.additional_questions) === null || _h === void 0 ? void 0 : _h.business_recurring_payments, options: recurringPaymentsOptions, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_recurring_payments })), h("div", { key: '93f996064e4055c9a81c0077a20fd878ad1a6c97', class: "col-12" }, h("form-control-text", { key: '68ac25357311838b8fa9a897fbb324f45f589f5f', name: 'business_recurring_payments_percentage', label: 'What percent of revenue is generated from each recurring payment type offered?', inputHandler: this.inputHandler, errorText: (_k = (_j = this.errors) === null || _j === void 0 ? void 0 : _j.additional_questions) === null || _k === void 0 ? void 0 : _k.business_recurring_payments_percentage, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_recurring_payments_percentage })), h("div", { key: 'f2dfe10a8ed19faa36a38a8192268813b03d454f', class: "col-12" }, h("form-control-select", { key: '1d6cf56564944d8dbef4f22c403232c9b7841018', name: 'business_seasonal', label: 'Is this business seasonal?', inputHandler: this.inputHandler, errorText: (_m = (_l = this.errors) === null || _l === void 0 ? void 0 : _l.additional_questions) === null || _m === void 0 ? void 0 : _m.business_seasonal, options: seasonalBusinessOptions, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_seasonal })), h("div", { key: 'fe75a54400d4614fe1d3ed9099ff5a5d3822c007', class: "col-12" }, h("form-control-text", { key: 'aa7609f7687a5c0666bf35119cd4af7ad4e68f89', name: 'business_other_payment_details', label: 'Is there anything else you would like us to know about how your customers pay the business?', inputHandler: this.inputHandler, errorText: (_p = (_o = this.errors) === null || _o === void 0 ? void 0 : _o.additional_questions) === null || _p === void 0 ? void 0 : _p.business_other_payment_details, defaultValue: additionalQuestionsDefaultValue === null || additionalQuestionsDefaultValue === void 0 ? void 0 : additionalQuestionsDefaultValue.business_other_payment_details }))))));
|
|
22
22
|
}
|
|
23
23
|
static get is() { return "justifi-additional-questions"; }
|
|
24
24
|
static get properties() {
|
|
25
25
|
return {
|
|
26
26
|
"formController": {
|
|
27
|
-
"type": "
|
|
27
|
+
"type": "any",
|
|
28
28
|
"mutable": false,
|
|
29
29
|
"complexType": {
|
|
30
30
|
"original": "FormController",
|
|
31
31
|
"resolved": "FormController",
|
|
32
32
|
"references": {
|
|
33
33
|
"FormController": {
|
|
34
|
-
"location": "
|
|
35
|
-
"
|
|
36
|
-
"id": "src/components.d.ts::FormController"
|
|
34
|
+
"location": "global",
|
|
35
|
+
"id": "global::FormController"
|
|
37
36
|
}
|
|
38
37
|
}
|
|
39
38
|
},
|
|
@@ -44,7 +43,9 @@ export class AdditionalQuestions {
|
|
|
44
43
|
"text": ""
|
|
45
44
|
},
|
|
46
45
|
"getter": false,
|
|
47
|
-
"setter": false
|
|
46
|
+
"setter": false,
|
|
47
|
+
"reflect": false,
|
|
48
|
+
"attribute": "form-controller"
|
|
48
49
|
}
|
|
49
50
|
};
|
|
50
51
|
}
|
|
@@ -30,10 +30,10 @@ export class BusinessCoreInfo {
|
|
|
30
30
|
render() {
|
|
31
31
|
var _a, _b;
|
|
32
32
|
const coreInfoDefaultValue = this.formController.getInitialValues();
|
|
33
|
-
return (h(Host, { key: '
|
|
33
|
+
return (h(Host, { key: 'abe85b33019341e670263a3fabefe1c73c203a12' }, h("fieldset", { key: '12eb6d4e78e56c8771d95e03fa7d8c4c9ea6478f' }, h("legend", { key: '514cb38045c7d4a4a6746a3846c84013507d0691', part: heading2 }, "General Info"), h("div", { key: '30a509f2dd8ec2938dcc790d8891a917b76b91a0', class: "row gy-3" }, h("div", { key: 'ced24f46905abd380fd190bd56d56eba7ec65289', class: "col-12" }, h("form-control-text", { key: '26e986bef6cad147cd7e5b557e27ad8e61932e54', name: "legal_name", label: "Legal Name", defaultValue: coreInfoDefaultValue.legal_name, errorText: this.errors.legal_name, inputHandler: this.inputHandler })), h("div", { key: 'fabae43dc916ee087b73e366b01bc40fc29a4110', class: "col-12" }, h("form-control-text", { key: 'bf7e45fe95c0156c583c693006f4a65f2d1d6b1b', name: "doing_business_as", label: "Doing Business As (DBA)", defaultValue: coreInfoDefaultValue.doing_business_as, errorText: this.errors.doing_business_as, inputHandler: this.inputHandler })), h("div", { key: '12d52af1fb5dcef7382b8a36f44a048bcff5a752', class: "col-12 col-md-8" }, h("form-control-select", { key: '94ea7c2438e5fbb0b85a9df5915d78791ae026ea', name: "classification", label: "Business Classification", options: businessClassificationOptions, defaultValue: coreInfoDefaultValue.classification, errorText: this.errors.classification, inputHandler: this.inputHandler })), h("div", { key: '90800a655ff4470ea6de9f774dcdccc95862c821', class: "col-12 col-md-4" }, h("form-control-date", { key: '715436c7bf7d34ab2505b1005873ac549f351af1', name: "date_of_incorporation", label: "Date of Incorporation", defaultValue: coreInfoDefaultValue.date_of_incorporation, errorText: this.errors.date_of_incorporation, inputHandler: this.inputHandler })), h("div", { key: 'f4502deec218f3493210ecb6b1ad19fc7cf9f28f', class: "col-12 col-md-6" }, h("form-control-text", { key: '91614c8854a4b2e79fea028c1ad43ef751dacfb1', name: "industry", label: "Industry", defaultValue: coreInfoDefaultValue.industry, errorText: this.errors.industry, inputHandler: this.inputHandler })), h("div", { key: '9c7a45b88199e7d00673e6d569f45e2dcf3d242d', class: "col-12 col-md-6" }, (!((_a = this.coreInfo) === null || _a === void 0 ? void 0 : _a.tax_id_last4) || this.isEditingTaxId) ? (h("form-control-number-masked", { name: "tax_id", label: countryLabels[this.country].taxIdLabel, defaultValue: this.isEditingTaxId ? '' : coreInfoDefaultValue.tax_id, errorText: this.errors.tax_id, inputHandler: this.inputHandler, mask: IDENTITY_MASKS[this.country], helpText: countryLabels[this.country].taxIdHelpText })) : (h("div", null, h("label", { class: "form-label", part: label }, countryLabels[this.country].taxIdLabel), h("div", { class: "input-group mb-3" }, h("input", { type: "text", class: "form-control", part: inputDisabled, value: `****${(_b = this.coreInfo) === null || _b === void 0 ? void 0 : _b.tax_id_last4}`, disabled: true }), h("button", { class: "btn btn-secondary", type: "button", part: buttonSecondary, onClick: () => {
|
|
34
34
|
this.isEditingTaxId = true;
|
|
35
35
|
this.formController.setValues(Object.assign(Object.assign({}, this.formController.values.getValue()), { tax_id: '' }));
|
|
36
|
-
} }, "Change"))))), h("div", { key: '
|
|
36
|
+
} }, "Change"))))), h("div", { key: 'd0eb145c0afde23fd1dcf7837763971b259ff260', class: "col-12" }, h("form-control-text", { key: '7b2d6a1558b6be6adc87ff4109bca6e9238c2ecf', name: "website_url", label: "Website URL", defaultValue: coreInfoDefaultValue.website_url, errorText: this.errors.website_url, inputHandler: this.inputHandler })), h("div", { key: 'eb9637448b9f9a6e4a8b8a08ad9f7f48ff56ec4f', class: "col-12 col-md-6" }, h("form-control-text", { key: '1f2b0ce0c7dd02485635e8f666d59cd7ec792dbc', name: "email", label: "Email Address", defaultValue: coreInfoDefaultValue.email, errorText: this.errors.email, inputHandler: this.inputHandler })), h("div", { key: '46fa9ad350b8482296ce0a76db841b78efb9b83b', class: "col-12 col-md-6" }, h("form-control-number-masked", { key: '9d4376e2e1d4372470ba8483f8fe1c0992267e38', name: "phone", label: "Phone Number", defaultValue: coreInfoDefaultValue.phone, errorText: this.errors.phone, inputHandler: this.inputHandler, mask: PHONE_MASKS.US }))))));
|
|
37
37
|
}
|
|
38
38
|
static get is() { return "justifi-business-core-info"; }
|
|
39
39
|
static get properties() {
|
|
@@ -32,26 +32,25 @@ export class BusinessRepresentative {
|
|
|
32
32
|
render() {
|
|
33
33
|
var _a, _b;
|
|
34
34
|
const representativeDefaultValue = this.formController.getInitialValues().representative;
|
|
35
|
-
return (h(Host, { key: '
|
|
35
|
+
return (h(Host, { key: '1ce133c6cf1804607b661953bb9d952e6dfdede7' }, h("fieldset", { key: '759e0e7adc03c8814e09effd245e7c25f9fcf536' }, h("legend", { key: '625eb15226d9318075c57c7e13d6b8a04686f00f', part: heading2 }, "Representative"), h("div", { key: '8b11c10cd073c3ffcb7c52f97c463b91a5609afa', class: "row gy-3" }, h("div", { key: '35b0b9a741ee46dfc049ea5914dfa672e4bd64f3', class: "col-12 col-md-8" }, h("form-control-text", { key: '577cb8c5911c5a8364de282ca04e75b045d6de36', name: "name", label: "Full Name", defaultValue: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.name, errorText: this.errors.name, inputHandler: this.inputHandler })), h("div", { key: '3ebaa46f7045f1db417285fe3ef9c19310dbe0c6', class: "col-12 col-md-4" }, h("form-control-text", { key: '69eb59adf3da1d3d48b1d395badd4c76ac0d8383', name: "title", label: "Title", defaultValue: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.title, errorText: this.errors.title, inputHandler: this.inputHandler })), h("div", { key: 'd9ee1e3a4919e5d714f34ff1417677a48101166f', class: "col-12 col-md-6" }, h("form-control-text", { key: 'cc6c0e28dc815985be5309de33957fcd37f53b29', name: "email", label: "Email Address", defaultValue: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.email, errorText: this.errors.email, inputHandler: this.inputHandler })), h("div", { key: 'd40a0a637c921ca6e8fa4aa347369c029c4569cb', class: "col-12 col-md-6" }, h("form-control-number-masked", { key: 'ce15cd57570e34d14bc596c1b5f7e49d3f33ea36', name: "phone", label: "Phone Number", defaultValue: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.phone, errorText: this.errors.phone, inputHandler: this.inputHandler, mask: PHONE_MASKS.US })), h("div", { key: '1504ac209231141b564412af3719b2ab6d84e553', class: "col-12 col-md-4" }, h("form-control-date", { key: '8fe92ed396ab947f439a04e2b67787725b393dcb', name: "dob_full", label: "Birth Date", defaultValue: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.dob_full, errorText: this.errors.dob_full, inputHandler: this.inputHandler, onFormControlInput: this.onDateOfBirthUpdate })), h("div", { key: 'd8ee89f3f4124ebb222d99a9337db4be7ab7df61', class: "col-12 col-md-8" }, (!((_a = this.representative) === null || _a === void 0 ? void 0 : _a.ssn_last4) || this.isEditingIdentification) ? (h("form-control-number-masked", { name: "identification_number", label: this.identificationNumberLabel, defaultValue: this.isEditingIdentification ? '' : representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.identification_number, errorText: this.errors.identification_number, inputHandler: this.inputHandler, mask: IDENTITY_MASKS[this.country], helpText: countryLabels[this.country].identityHelpText })) : (h("div", null, h("label", { class: "form-label", part: label }, this.identificationNumberLabel), h("div", { class: "input-group mb-3" }, h("input", { type: "text", class: "form-control", part: inputDisabled, value: `****${(_b = this.representative) === null || _b === void 0 ? void 0 : _b.ssn_last4}`, disabled: true }), h("button", { class: "btn btn-secondary", type: "button", part: buttonSecondary, onClick: () => {
|
|
36
36
|
this.isEditingIdentification = true;
|
|
37
37
|
// Clear last4 and current value to force validation
|
|
38
38
|
this.formController.setValues(Object.assign(Object.assign({}, this.formController.values.getValue()), { representative: Object.assign(Object.assign({}, this.formController.values.getValue().representative), { ssn_last4: null, identification_number: '' }) }));
|
|
39
|
-
} }, "Change"))))), h("div", { key: '
|
|
39
|
+
} }, "Change"))))), h("div", { key: '54548bf9622fcc949ebd91db29cc8b877dd7652d', class: "col-12" }, h("justifi-identity-address-form", { key: '9925b7d70bceb8e3d1dafc9313673a5c8a0810a0', errors: this.errors.address, defaultValues: representativeDefaultValue === null || representativeDefaultValue === void 0 ? void 0 : representativeDefaultValue.address, handleFormUpdate: this.onAddressFormUpdate, country: this.country }))))));
|
|
40
40
|
}
|
|
41
41
|
static get is() { return "justifi-business-representative"; }
|
|
42
42
|
static get properties() {
|
|
43
43
|
return {
|
|
44
44
|
"formController": {
|
|
45
|
-
"type": "
|
|
45
|
+
"type": "any",
|
|
46
46
|
"mutable": false,
|
|
47
47
|
"complexType": {
|
|
48
48
|
"original": "FormController",
|
|
49
49
|
"resolved": "FormController",
|
|
50
50
|
"references": {
|
|
51
51
|
"FormController": {
|
|
52
|
-
"location": "
|
|
53
|
-
"
|
|
54
|
-
"id": "src/components.d.ts::FormController"
|
|
52
|
+
"location": "global",
|
|
53
|
+
"id": "global::FormController"
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
56
|
},
|
|
@@ -62,7 +61,9 @@ export class BusinessRepresentative {
|
|
|
62
61
|
"text": ""
|
|
63
62
|
},
|
|
64
63
|
"getter": false,
|
|
65
|
-
"setter": false
|
|
64
|
+
"setter": false,
|
|
65
|
+
"reflect": false,
|
|
66
|
+
"attribute": "form-controller"
|
|
66
67
|
},
|
|
67
68
|
"country": {
|
|
68
69
|
"type": "string",
|
|
@@ -15,22 +15,21 @@ export class LegalAddressForm {
|
|
|
15
15
|
render() {
|
|
16
16
|
var _a;
|
|
17
17
|
const legalAddressDefaultValue = this.formController.getInitialValues().legal_address;
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: '0e6136a175ee0bb8708d1848ad850bd973f60c4b' }, h("fieldset", { key: '2fcfb7b8cc1bf70157dbfaba7bb5df9ddd82454b' }, h("legend", { key: 'ce30f5e679113cceda046f142e01548a1db573a0', part: heading2 }, "Business Legal Address"), h("justifi-form-address-fields", { key: 'a091d88fb62401c814458d696866de64a26a6bff', country: this.country, errors: (_a = this.errors) === null || _a === void 0 ? void 0 : _a.legal_address, defaultValues: legalAddressDefaultValue, inputHandler: this.inputHandler }))));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "justifi-legal-address-form"; }
|
|
21
21
|
static get properties() {
|
|
22
22
|
return {
|
|
23
23
|
"formController": {
|
|
24
|
-
"type": "
|
|
24
|
+
"type": "any",
|
|
25
25
|
"mutable": false,
|
|
26
26
|
"complexType": {
|
|
27
27
|
"original": "FormController",
|
|
28
28
|
"resolved": "FormController",
|
|
29
29
|
"references": {
|
|
30
30
|
"FormController": {
|
|
31
|
-
"location": "
|
|
32
|
-
"
|
|
33
|
-
"id": "src/components.d.ts::FormController"
|
|
31
|
+
"location": "global",
|
|
32
|
+
"id": "global::FormController"
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
35
|
},
|
|
@@ -41,7 +40,9 @@ export class LegalAddressForm {
|
|
|
41
40
|
"text": ""
|
|
42
41
|
},
|
|
43
42
|
"getter": false,
|
|
44
|
-
"setter": false
|
|
43
|
+
"setter": false,
|
|
44
|
+
"reflect": false,
|
|
45
|
+
"attribute": "form-controller"
|
|
45
46
|
},
|
|
46
47
|
"country": {
|
|
47
48
|
"type": "string",
|
|
@@ -11,7 +11,7 @@ export class IdentityAddressForm {
|
|
|
11
11
|
this.handleFormUpdate(newValues);
|
|
12
12
|
}
|
|
13
13
|
render() {
|
|
14
|
-
return (h(Host, { key: '
|
|
14
|
+
return (h(Host, { key: 'c9b75fa8c884fb755cd26be4433022f278794e4e' }, h("justifi-form-address-fields", { key: '2f9cfa3fc695de214d9203c680e6cb115d714b82', country: this.country, errors: this.errors, defaultValues: this.defaultValues, inputHandler: this.inputHandler })));
|
|
15
15
|
}
|
|
16
16
|
static get is() { return "justifi-identity-address-form"; }
|
|
17
17
|
static get properties() {
|