@justifi/webcomponents 6.2.0 → 6.4.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 (121) hide show
  1. package/dist/cjs/{business-additional-questions-schema-BzHg6qqg.js → business-additional-questions-schema-CE-z5qrr.js} +1 -1
  2. package/dist/cjs/{business-identity-schema-Di-jf6nr.js → business-identity-schema-rMMiHyPz.js} +2 -2
  3. package/dist/cjs/{check-pkg-version-Cz6cM3zf.js → check-pkg-version-BO_NdUB_.js} +1 -1
  4. package/dist/cjs/{checkout.store-BiT7zKgX.js → checkout.store-BA6h-dp2.js} +2 -0
  5. package/dist/cjs/hidden-input_2.cjs.entry.js +1 -1
  6. package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +3 -3
  7. package/dist/cjs/justifi-apple-pay_8.cjs.entry.js +3 -3
  8. package/dist/cjs/justifi-bank-account-billing-form-simple_9.cjs.entry.js +6 -7
  9. package/dist/cjs/justifi-business-details.cjs.entry.js +2 -2
  10. package/dist/cjs/justifi-business-form.cjs.entry.js +5 -5
  11. package/dist/cjs/justifi-checkout.cjs.entry.js +6 -5
  12. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +2 -2
  13. package/dist/cjs/justifi-dispute-management.cjs.entry.js +2 -2
  14. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +2 -2
  15. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +2 -2
  16. package/dist/cjs/justifi-order-terminals.cjs.entry.js +2 -2
  17. package/dist/cjs/justifi-owner-form_3.cjs.entry.js +2 -2
  18. package/dist/cjs/justifi-payment-details.cjs.entry.js +2 -2
  19. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +2 -2
  20. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +2 -2
  21. package/dist/cjs/justifi-payments-list.cjs.entry.js +2 -2
  22. package/dist/cjs/justifi-payout-details.cjs.entry.js +2 -2
  23. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +2 -2
  24. package/dist/cjs/justifi-payouts-list.cjs.entry.js +2 -2
  25. package/dist/cjs/justifi-refund-payment.cjs.entry.js +2 -2
  26. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +3 -3
  27. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +2 -2
  28. package/dist/cjs/justifi-terminals-list.cjs.entry.js +2 -2
  29. package/dist/cjs/loader.cjs.js +1 -1
  30. package/dist/cjs/{package-CHe5hX1H.js → package-CvqCkafe.js} +1 -1
  31. package/dist/cjs/{schema-validations-AxtufX7q.js → schema-validations-BOiGVUHM.js} +1 -1
  32. package/dist/cjs/webcomponents.cjs.js +1 -1
  33. package/dist/collection/components/business-forms/schemas/business-address-schema.js +2 -2
  34. package/dist/collection/components/business-forms/schemas/schema-validations.js +1 -1
  35. package/dist/collection/components/checkout/checkout.js +31 -2
  36. package/dist/collection/components/modular-checkout/sub-components/billing-form-full.js +1 -2
  37. package/dist/collection/components/modular-checkout/sub-components/card-billing-form-simple.js +1 -2
  38. package/dist/collection/store/checkout.store.js +2 -0
  39. package/dist/docs.json +44 -11
  40. package/dist/esm/{business-additional-questions-schema-BCXg6YTP.js → business-additional-questions-schema-hZ6O6Bs0.js} +1 -1
  41. package/dist/esm/{business-identity-schema-CvzdGI9h.js → business-identity-schema-DJvIo0oa.js} +2 -2
  42. package/dist/esm/{check-pkg-version-DrqnlTa_.js → check-pkg-version-B6jUXpX3.js} +1 -1
  43. package/dist/esm/{checkout.store-CMsV0tl9.js → checkout.store-CaS_htQd.js} +2 -0
  44. package/dist/esm/hidden-input_2.entry.js +1 -1
  45. package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +3 -3
  46. package/dist/esm/justifi-apple-pay_8.entry.js +3 -3
  47. package/dist/esm/justifi-bank-account-billing-form-simple_9.entry.js +6 -7
  48. package/dist/esm/justifi-business-details.entry.js +2 -2
  49. package/dist/esm/justifi-business-form.entry.js +5 -5
  50. package/dist/esm/justifi-checkout.entry.js +6 -5
  51. package/dist/esm/justifi-checkouts-list.entry.js +2 -2
  52. package/dist/esm/justifi-dispute-management.entry.js +2 -2
  53. package/dist/esm/justifi-dispute-notification_3.entry.js +2 -2
  54. package/dist/esm/justifi-gross-payment-chart.entry.js +2 -2
  55. package/dist/esm/justifi-order-terminals.entry.js +2 -2
  56. package/dist/esm/justifi-owner-form_3.entry.js +2 -2
  57. package/dist/esm/justifi-payment-details.entry.js +2 -2
  58. package/dist/esm/justifi-payment-provisioning.entry.js +2 -2
  59. package/dist/esm/justifi-payment-transactions-list.entry.js +2 -2
  60. package/dist/esm/justifi-payments-list.entry.js +2 -2
  61. package/dist/esm/justifi-payout-details.entry.js +2 -2
  62. package/dist/esm/justifi-payout-transactions-list.entry.js +2 -2
  63. package/dist/esm/justifi-payouts-list.entry.js +2 -2
  64. package/dist/esm/justifi-refund-payment.entry.js +2 -2
  65. package/dist/esm/justifi-season-interruption-insurance.entry.js +3 -3
  66. package/dist/esm/justifi-terminal-orders-list.entry.js +2 -2
  67. package/dist/esm/justifi-terminals-list.entry.js +2 -2
  68. package/dist/esm/loader.js +1 -1
  69. package/dist/esm/{package-BjCdImSF.js → package-BeukOaOq.js} +1 -1
  70. package/dist/esm/{schema-validations-CoIE0a4H.js → schema-validations-C0qp3ZJ5.js} +2 -2
  71. package/dist/esm/webcomponents.js +1 -1
  72. package/dist/module/billing-form-full.js +1 -2
  73. package/dist/module/business-address-schema.js +2 -2
  74. package/dist/module/card-billing-form-simple.js +1 -2
  75. package/dist/module/checkout.store.js +2 -0
  76. package/dist/module/justifi-checkout.js +4 -2
  77. package/dist/module/package.js +1 -1
  78. package/dist/module/schema-validations.js +1 -1
  79. package/dist/types/components/checkout/checkout.d.ts +3 -1
  80. package/dist/types/components.d.ts +4 -2
  81. package/dist/types/store/checkout.store.d.ts +1 -0
  82. package/dist/webcomponents/{p-071c1047.entry.js → p-0214a9f4.entry.js} +1 -1
  83. package/dist/webcomponents/{p-97bfb8d5.entry.js → p-06a0e2e2.entry.js} +1 -1
  84. package/dist/webcomponents/{p-85336b64.entry.js → p-0bd7b871.entry.js} +1 -1
  85. package/dist/webcomponents/{p-264d9183.entry.js → p-20ccd0a4.entry.js} +1 -1
  86. package/dist/webcomponents/p-220420bb.entry.js +1 -0
  87. package/dist/webcomponents/{p-910af6e1.entry.js → p-2976c54e.entry.js} +1 -1
  88. package/dist/webcomponents/{p-ab1ef223.entry.js → p-32af1830.entry.js} +1 -1
  89. package/dist/webcomponents/{p-7f8cd8dd.entry.js → p-589e4fcb.entry.js} +1 -1
  90. package/dist/webcomponents/p-58a68ad6.entry.js +1 -0
  91. package/dist/webcomponents/{p-98a50760.entry.js → p-5c847406.entry.js} +1 -1
  92. package/dist/webcomponents/p-77884032.entry.js +1 -0
  93. package/dist/webcomponents/{p-5aa27e1b.entry.js → p-85bbadaf.entry.js} +1 -1
  94. package/dist/webcomponents/{p-f87b9b86.entry.js → p-89f1448c.entry.js} +1 -1
  95. package/dist/webcomponents/{p-e549cd33.entry.js → p-89ff96ef.entry.js} +1 -1
  96. package/dist/webcomponents/p-8dab7768.entry.js +1 -0
  97. package/dist/webcomponents/{p-73e766d2.entry.js → p-98508ff0.entry.js} +1 -1
  98. package/dist/webcomponents/{p-ccc771d0.entry.js → p-9d6ceb95.entry.js} +1 -1
  99. package/dist/webcomponents/{p-ad4900de.entry.js → p-9fb66685.entry.js} +1 -1
  100. package/dist/webcomponents/p-BeukOaOq.js +1 -0
  101. package/dist/webcomponents/{p-BfYkosa4.js → p-Bo278yZD.js} +1 -1
  102. package/dist/webcomponents/{p-pV1ZX4A8.js → p-CeO5d98O.js} +1 -1
  103. package/dist/webcomponents/p-DU8dqq9U.js +1 -0
  104. package/dist/webcomponents/p-DopgIZQg.js +1 -0
  105. package/dist/webcomponents/p-O4_LrrnE.js +1 -0
  106. package/dist/webcomponents/{p-99af02c9.entry.js → p-aee79310.entry.js} +1 -1
  107. package/dist/webcomponents/{p-24be9ef6.entry.js → p-c6edc4c9.entry.js} +1 -1
  108. package/dist/webcomponents/{p-93806238.entry.js → p-d287dea1.entry.js} +1 -1
  109. package/dist/webcomponents/{p-20a85390.entry.js → p-de7f1479.entry.js} +1 -1
  110. package/dist/webcomponents/{p-6c2b5d37.entry.js → p-e050b917.entry.js} +1 -1
  111. package/dist/webcomponents/{p-e3a41b95.entry.js → p-e34a6e5f.entry.js} +1 -1
  112. package/dist/webcomponents/webcomponents.esm.js +1 -1
  113. package/package.json +2 -1
  114. package/dist/webcomponents/p-568577d4.entry.js +0 -1
  115. package/dist/webcomponents/p-92f0e010.entry.js +0 -1
  116. package/dist/webcomponents/p-BHe87s0Y.js +0 -1
  117. package/dist/webcomponents/p-BjCdImSF.js +0 -1
  118. package/dist/webcomponents/p-CbBTgsKC.js +0 -1
  119. package/dist/webcomponents/p-Cpp4qrH2.js +0 -1
  120. package/dist/webcomponents/p-e77490af.entry.js +0 -1
  121. package/dist/webcomponents/p-f17188cf.entry.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import { c as create$3, a as create$6 } from './form.js';
2
- import { e as cityValidation, l as lineTwoValidation, f as lineOneValidation, c as postalValidation, B as makePostalValidation } from './schema-validations.js';
2
+ import { e as cityValidation, l as lineTwoValidation, f as lineOneValidation, B as makePostalValidation } from './schema-validations.js';
3
3
  import { a as CountryCode } from './Business.js';
4
4
 
5
5
  // Internal USA schemas
@@ -15,7 +15,7 @@ const strictSchemaUSA = () => create$3({
15
15
  line2: lineTwoValidation.nullable(),
16
16
  city: cityValidation.required('Enter city'),
17
17
  state: create$6().required('Select state'),
18
- postal_code: postalValidation.required('Enter postal code'),
18
+ postal_code: makePostalValidation(CountryCode.USA).required('Enter postal code'),
19
19
  });
20
20
  // Internal CAN schemas
21
21
  const schemaCAN = () => create$3({
@@ -1,7 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
2
  import { p as postalOnlySchema } from './billing-form-schema.js';
3
3
  import { W as billingForm } from './parts.js';
4
- import { n as numberOnlyHandler } from './utils3.js';
5
4
  import { F as FormController } from './form.js';
6
5
  import { S as StyledHost } from './styled-host.js';
7
6
  import './details.js';
@@ -45,7 +44,7 @@ const CardBillingFormSimple = /*@__PURE__*/ proxyCustomElement(class CardBilling
45
44
  }
46
45
  render() {
47
46
  const billingFormDefaultValue = this.formController.getInitialValues();
48
- return (h(StyledHost, { key: '2523873a34180694357ab780bd4b9768f9ea267d' }, h("div", { key: '30204a976bba8a843830a905cec86d5aaf486f30', part: billingForm }, h("form", { key: '479e65b39fbecc80ba6281648bd390c4cd2a688e' }, h("fieldset", { key: '93613aa83561aaba46efff4e6d64e240e1ddbc84' }, this.legend && (h("legend", { key: '4d6da7c78c5b1a84bc4b37dfca80d9c7f0be462f' }, this.legend)), h("div", { key: '11259470415c62c15c0ef9217f91f4d6b5c8651b', class: "row gy-3" }, h("div", { key: '2b85b5b820991faee8d8b14c121a69ab4974da98', class: "col-12" }, h("form-control-text", { key: 'd7632e0d32832491bfdf911ae45e67efe0ec6555', name: 'address_postal_code', label: "ZIP", defaultValue: billingFormDefaultValue.address_postal_code, errorText: this.errors.address_postal_code, inputHandler: this.inputHandler, maxLength: 5, keyDownHandler: numberOnlyHandler }))))))));
47
+ return (h(StyledHost, { key: '406560bd86a894ec7d71ad6872ffedf200b7054d' }, h("div", { key: '5a824cbbd8dcb85fd5a7fab93ddbedd5407ef82d', part: billingForm }, h("form", { key: '2aa1abdcf5428f26edc3db42fc68141765ef5b64' }, h("fieldset", { key: '92844b0b69dda6f379a6509458dd67b2d6ec2c24' }, this.legend && (h("legend", { key: 'bc18d61d3f3d6b70bfece88dfaf540348099b252' }, this.legend)), h("div", { key: '63bc056fdfb6945eb00085ca1bf75fdb81741592', class: "row gy-3" }, h("div", { key: '56af403876ad942fc13570a462aff682d5b9e24e', class: "col-12" }, h("form-control-text", { key: '1478a6802dc5df7318e87f85bd069c6719af3372', name: 'address_postal_code', label: "Postal Code", defaultValue: billingFormDefaultValue.address_postal_code, errorText: this.errors.address_postal_code, inputHandler: this.inputHandler, maxLength: 7 }))))))));
49
48
  }
50
49
  }, [257, "justifi-card-billing-form-simple", {
51
50
  "legend": [1025],
@@ -73,6 +73,7 @@ function getAvailablePaymentMethodTypes() {
73
73
  return methods;
74
74
  }
75
75
  function getCheckoutState() {
76
+ var _a;
76
77
  return {
77
78
  selectedPaymentMethod: checkoutStore.selectedPaymentMethod,
78
79
  paymentAmount: checkoutStore.paymentAmount,
@@ -87,6 +88,7 @@ function getCheckoutState() {
87
88
  disableBankAccount: checkoutStore.disableBankAccount,
88
89
  disableCreditCard: checkoutStore.disableCreditCard,
89
90
  disablePaymentMethodGroup: checkoutStore.disablePaymentMethodGroup,
91
+ paymentToken: (_a = checkoutStore.paymentToken) !== null && _a !== void 0 ? _a : undefined,
90
92
  };
91
93
  }
92
94
  function onAnyChange(callback) {
@@ -73,6 +73,7 @@ const Checkout = /*@__PURE__*/ proxyCustomElement(class Checkout extends HTMLEle
73
73
  this.isSubmitting = false;
74
74
  }
75
75
  checkoutError(_event) {
76
+ console.error('[justifi-checkout] error-event received', _event === null || _event === void 0 ? void 0 : _event.detail);
76
77
  this.isSubmitting = false;
77
78
  }
78
79
  checkoutChanged(event) {
@@ -110,9 +111,9 @@ const Checkout = /*@__PURE__*/ proxyCustomElement(class Checkout extends HTMLEle
110
111
  }
111
112
  render() {
112
113
  var _a, _b;
113
- return (h(StyledHost, { key: '468b97261a110d5779ac742de45248aadfbeeb6c' }, h("justifi-modular-checkout", { key: '7ce8d2e147f0b91ad93996f7e044a3fe2a9bd604', ref: (el) => {
114
+ return (h(StyledHost, { key: 'a732f9446f972ce7f73d6fe0ac363fb95337c680' }, h("justifi-modular-checkout", { key: '801b883e53cde203ede129300ded1a2f0483be34', ref: (el) => {
114
115
  this.modularCheckoutRef = el;
115
- }, authToken: this.authToken, checkoutId: this.checkoutId }, h("div", { key: '7ace65df988d338d0cc810a532f8914a046e7268', class: "row gy-3 jfi-checkout-core" }, h("div", { key: '3c6223ef06c7a2b42bef97dd67f5f09f21bb248b', class: "col-12", part: checkoutSummary }, h("justifi-header", { key: '622b2ef667ab222a3152134573e7191bf2fa6117', text: "Summary", level: "h2", class: "fs-5 fw-bold pb-3" }), h("section", { key: '036b447e7e92b1c6bfe33aff5d07a35bc2d9a915' }, h("justifi-checkout-summary", { key: '292c0b09960046e78b902652e5b0902129715ef5' }))), h("div", { key: '5d27c5a5d3f026ad9f9da37833f8ecf808a89de9', class: "col-12 mt-4" }, h("slot", { key: '1a583d890039b1c3a4493a0687ac5a9caa21d2b3', name: "insurance" })), h("div", { key: '0d7427acc37518888fceef97431f594fb4ea2359', class: "col-12 mt-4" }, h("justifi-header", { key: '5543bc55d4be2de9064b4c4924ecd7d2f32da7d9', text: "Payment", level: "h2", class: "fs-5 fw-bold pb-3" }), this.showPaymentTypeHeader && (h("justifi-header", { key: '80a17876009d3c6e39017432053e3ab18b6d406e', text: "Select payment type", level: "h3", class: "fs-6 fw-bold lh-lg" })), h("div", { key: 'eac0e3466d8cf74df53acd1252d11d0461d0a263', class: "d-flex flex-column" }, h("section", { key: '1e27c56d333a44760d552549a716b39b1bcc538f' }, h("div", { key: '65680e1ed1a3eccc84ec67797f468edafcb65a80' }, h("justifi-saved-payment-methods", { key: '800e1e6312f8a38856341b5bc78c93a9fc18434e' }), this.availablePaymentMethods.includes(PAYMENT_METHODS.APPLE_PAY) && (h("div", { key: '0e5d9164a0066b88e7b9467bbb25167262614087', class: "mb-3" }, h("justifi-apple-pay", { key: '81717e6193aa402eef18cf006b74798d02811a8d' }))), this.availablePaymentMethods.includes(PAYMENT_METHODS.SEZZLE) && (h("justifi-radio-list-item", { key: '6405f56f8ee450d410801056c362580a6457325f', 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: 'd2b920050db52162f5f1fee2ee46884f50f511e8', 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("justifi-tokenize-payment-method", { key: 'c160cd5403029ce3e1cac142cf1e782c104e97f2', 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: '6e03db84ccbfab811c72e4df5ffaf23c8822539b', class: "mt-4" }, h("justifi-button", { key: '93bb084fdcce73aebed63ad887ced32c4d47ef7f', text: "Pay", type: "submit", variant: "primary", clickHandler: (e) => this.submit(e), disabled: this.isSubmitting, isLoading: this.isSubmitting, customStyle: { width: '100%', textAlign: "center" } }))))));
116
+ }, authToken: this.authToken, checkoutId: this.checkoutId, preCompleteHook: this.preCompleteHook }, h("div", { key: 'bdef9ee17f78cd1e90eca694f97118b8667dac34', class: "row gy-3 jfi-checkout-core" }, h("div", { key: '376eceb5fc3556812d2068df68c9fa3e69a1c144', class: "col-12", part: checkoutSummary }, h("justifi-header", { key: '8ba26c1f23bca80e9d856506b13a57f4bfc15967', text: "Summary", level: "h2", class: "fs-5 fw-bold pb-3" }), h("section", { key: '5738d96d54bd52a377554d46a5e9e7b5b69bed3f' }, h("justifi-checkout-summary", { key: '1bb3a79abbf9afdc0e35b98902e712d2ba4bfc7f' }))), h("div", { key: '04633327b84fa48a47704fcac8ba5480ee84c7ef', class: "col-12 mt-4" }, h("slot", { key: 'f0f276203236ec3249aa3ebaedbfdb403f96b100', name: "insurance" })), h("div", { key: '7e48b02814dc8531680dd1b2d397b8bf22c8de46', class: "col-12 mt-4" }, h("justifi-header", { key: 'b2781e0eb8453c56ad11f9fb75bb71aeed3e28cf', text: "Payment", level: "h2", class: "fs-5 fw-bold pb-3" }), this.showPaymentTypeHeader && (h("justifi-header", { key: '7fe92e841814e189acd9a8e71f5bf093f22f6b39', text: "Select payment type", level: "h3", class: "fs-6 fw-bold lh-lg" })), h("div", { key: 'b3768d7c90eb48e21373b8ae73e7259109ca3ca0', class: "d-flex flex-column" }, h("section", { key: '2f43b71d6c713365dcbd96493b7849c9c7b66eb8' }, h("div", { key: 'fd81d3cc0ddbd4bb8e3f5b8b90710c755f0e3e7b' }, h("justifi-saved-payment-methods", { key: '5e5a94e20f00a4cbd0e0499578d25688accb3144' }), this.availablePaymentMethods.includes(PAYMENT_METHODS.APPLE_PAY) && (h("div", { key: '716e375a293f18fa4cf9e658c3f16e3f2473cfdc', class: "mb-3" }, h("justifi-apple-pay", { key: '2a81a0530c00cdffd623c4f4214814223dce0b75' }))), this.availablePaymentMethods.includes(PAYMENT_METHODS.SEZZLE) && (h("justifi-radio-list-item", { key: '5f0cc98042ae31502da614c0cb7744f1d6decf2b', 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: 'c12ad1781678d428e732dd03efaa01b752ef7542', 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("justifi-tokenize-payment-method", { key: '82f7f1a583e1f47e0c403fec8f703021b82e921a', 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: '19e52decdbeebe82ea70fb7c4dfca688b03503de', class: "mt-4" }, h("justifi-button", { key: '23f36924b6989332e242d5e275ce76524f328d4f', text: "Pay", type: "submit", variant: "primary", clickHandler: (e) => this.submit(e), disabled: this.isSubmitting, isLoading: this.isSubmitting, customStyle: { width: '100%', textAlign: "center" } }))))));
116
117
  }
117
118
  static get watchers() { return {
118
119
  "authToken": ["propChanged"],
@@ -130,6 +131,7 @@ const Checkout = /*@__PURE__*/ proxyCustomElement(class Checkout extends HTMLEle
130
131
  "disablePaymentMethodGroup": [4, "disable-payment-method-group"],
131
132
  "hideBankAccountBillingForm": [4, "hide-bank-account-billing-form"],
132
133
  "hideCardBillingForm": [4, "hide-card-billing-form"],
134
+ "preCompleteHook": [16],
133
135
  "availablePaymentMethods": [32],
134
136
  "checkout": [32],
135
137
  "complete": [32],
@@ -1,5 +1,5 @@
1
1
  const name = "@justifi/webcomponents";
2
- const version = "6.2.0";
2
+ const version = "6.4.0";
3
3
  var webcomponentsPackageJson = {
4
4
  name: name,
5
5
  version: version};
@@ -166,7 +166,7 @@ const stateValidation = create$6()
166
166
  .oneOf(StateOptions.map((option) => option.value), 'Enter a 2-letter state abbreviation, such as CA')
167
167
  .transform(transformEmptyString);
168
168
  const postalValidation = create$6()
169
- .matches(/^[0-9]{5}$/, 'Enter valid postal code')
169
+ .matches(/^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$/, 'Enter valid postal code')
170
170
  .transform(transformEmptyString);
171
171
  // Additional Questions Validations
172
172
  const revenueValidation = create$6()
@@ -3,7 +3,8 @@ import JustifiAnalytics from '../../api/Analytics';
3
3
  import { BillingFormFields } from './billing-form/billing-form-schema';
4
4
  import { ICheckout, ILoadedEventResponse } from '../../api';
5
5
  import { ComponentErrorEvent, ComponentSubmitEvent } from '../../api/ComponentEvents';
6
- import { CheckoutChangedEventDetail, PAYMENT_METHODS } from '../modular-checkout/ModularCheckout';
6
+ import { CheckoutState } from '../../store/checkout.store';
7
+ import { CheckoutChangedEventDetail, Hook, PAYMENT_METHODS } from '../modular-checkout/ModularCheckout';
7
8
  export declare class Checkout {
8
9
  analytics: JustifiAnalytics;
9
10
  modularCheckoutRef?: HTMLJustifiModularCheckoutElement;
@@ -25,6 +26,7 @@ export declare class Checkout {
25
26
  disablePaymentMethodGroup?: boolean;
26
27
  hideBankAccountBillingForm?: boolean;
27
28
  hideCardBillingForm?: boolean;
29
+ preCompleteHook?: Hook<CheckoutState>;
28
30
  propChanged(): void;
29
31
  errorEvent: EventEmitter<ComponentErrorEvent>;
30
32
  loadedEvent: EventEmitter<ILoadedEventResponse>;
@@ -18,9 +18,9 @@ import { ApplePayButtonStyle, ApplePayButtonType, IApplePayToken } from "./api/A
18
18
  import { BillingFormFields } from "./components/checkout/billing-form/billing-form-schema";
19
19
  import { CountryCode } from "./utils/country-codes";
20
20
  import { FormController as FormController1 } from "./ui-components/form/form";
21
- import { Dispute, IDispute } from "./api/Dispute";
22
21
  import { CheckoutChangedEventDetail, Hook, SelectedPaymentMethod } from "./components/modular-checkout/ModularCheckout";
23
22
  import { CheckoutState } from "./store/checkout.store";
23
+ import { Dispute, IDispute } from "./api/Dispute";
24
24
  import { PaymentMethodPayload } from "./components/checkout/payment-method-payload";
25
25
  import { PaymentMethodOption } from "./components/checkout/payment-method-option-utils";
26
26
  import { Identity } from "./api/Identity";
@@ -38,9 +38,9 @@ export { ApplePayButtonStyle, ApplePayButtonType, IApplePayToken } from "./api/A
38
38
  export { BillingFormFields } from "./components/checkout/billing-form/billing-form-schema";
39
39
  export { CountryCode } from "./utils/country-codes";
40
40
  export { FormController as FormController1 } from "./ui-components/form/form";
41
- export { Dispute, IDispute } from "./api/Dispute";
42
41
  export { CheckoutChangedEventDetail, Hook, SelectedPaymentMethod } from "./components/modular-checkout/ModularCheckout";
43
42
  export { CheckoutState } from "./store/checkout.store";
43
+ export { Dispute, IDispute } from "./api/Dispute";
44
44
  export { PaymentMethodPayload } from "./components/checkout/payment-method-payload";
45
45
  export { PaymentMethodOption } from "./components/checkout/payment-method-option-utils";
46
46
  export { Identity } from "./api/Identity";
@@ -532,6 +532,7 @@ export namespace Components {
532
532
  * @default false
533
533
  */
534
534
  "hideCardBillingForm"?: boolean;
535
+ "preCompleteHook"?: Hook<CheckoutState>;
535
536
  "validate": () => Promise<{ isValid: boolean; }>;
536
537
  }
537
538
  interface JustifiCheckoutSummary {
@@ -3576,6 +3577,7 @@ declare namespace LocalJSX {
3576
3577
  "onError-event"?: (event: JustifiCheckoutCustomEvent<ComponentErrorEvent>) => void;
3577
3578
  "onLoaded"?: (event: JustifiCheckoutCustomEvent<ILoadedEventResponse>) => void;
3578
3579
  "onSubmit-event"?: (event: JustifiCheckoutCustomEvent<ComponentSubmitEvent>) => void;
3580
+ "preCompleteHook"?: Hook<CheckoutState>;
3579
3581
  }
3580
3582
  interface JustifiCheckoutSummary {
3581
3583
  }
@@ -43,6 +43,7 @@ export interface CheckoutState {
43
43
  disableBankAccount: boolean;
44
44
  disableCreditCard: boolean;
45
45
  disablePaymentMethodGroup: boolean;
46
+ paymentToken?: string;
46
47
  }
47
48
  declare const initialState: IInitialState;
48
49
  declare const checkoutStore: IInitialState, onChange: import("@stencil/store/dist/types").OnChangeHandler<IInitialState>;
@@ -1 +1 @@
1
- import{r as t,c as s,h as i}from"./p-DwYM91AU.js";import{C as o,a as r}from"./p-Cjcsf8ku.js";import{c as e,J as p}from"./p-pV1ZX4A8.js";import{P as a}from"./p-D0YDz3L6.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{d as c}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as n,a as h}from"./p-D2muobcE.js";import{m}from"./p-DYGIC0QH.js";import{m as u,S as d}from"./p-CriWtqRc.js";import{S as j}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d as f}from"./p-BVWZSqCK.js";import"./p-BjCdImSF.js";import"./p-C8yN3uBj.js";import"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-q6C7btl0.js";import"./p-Cu1FEdFr.js";import"./p-Dj_zevuD.js";const l=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=f,this.handleOnError=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){e(),this.analytics=new p(this),this.initializeGetData()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetData()}initializeGetData(){this.initializePayoutsServices(),this.initializeGetSubAccounts()}initializePayoutsServices(){if(this.accountId&&this.authToken){const t={id:this.accountId,authToken:this.authToken,service:new a};this.getPayouts=(({id:t,authToken:s,service:i})=>async({params:r,onSuccess:e,onError:p})=>{var a,m;try{const u=await i.fetchPayouts(t,s,r);if(u.error)return p({error:h(u.error),code:n(null===(m=u.error)||void 0===m?void 0:m.code),severity:o.ERROR});{const t=Object.assign({},u.page_info);e({payouts:(null===(a=u.data)||void 0===a?void 0:a.map((t=>new c(t))))||[],pagingInfo:t})}}catch(t){const s=n(null==t?void 0:t.code);return p({error:t.message||t,code:s,severity:o.ERROR})}})(t),this.getPayoutCSV=m(t)}else this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:r.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR})}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=u({accountId:this.accountId,authToken:this.authToken,service:new d}))}render(){return i(j,{key:"5ec4cfd9c227dc5c993fe82972124649d7468617"},i("payouts-list-core",{key:"8e862e8b6c6cf861d342e72afec20d527f34f5c1",getPayouts:this.getPayouts,getPayoutCSV:this.getPayoutCSV,getSubAccounts:this.getSubAccounts,"onError-event":this.handleOnError,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{l as justifi_payouts_list}
1
+ import{r as t,c as s,h as i}from"./p-DwYM91AU.js";import{C as o,a as r}from"./p-Cjcsf8ku.js";import{c as e,J as p}from"./p-CeO5d98O.js";import{P as a}from"./p-D0YDz3L6.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{d as c}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as n,a as h}from"./p-D2muobcE.js";import{m}from"./p-DYGIC0QH.js";import{m as u,S as d}from"./p-CriWtqRc.js";import{S as j}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d as f}from"./p-BVWZSqCK.js";import"./p-BeukOaOq.js";import"./p-C8yN3uBj.js";import"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-q6C7btl0.js";import"./p-Cu1FEdFr.js";import"./p-Dj_zevuD.js";const l=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=f,this.handleOnError=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){e(),this.analytics=new p(this),this.initializeGetData()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetData()}initializeGetData(){this.initializePayoutsServices(),this.initializeGetSubAccounts()}initializePayoutsServices(){if(this.accountId&&this.authToken){const t={id:this.accountId,authToken:this.authToken,service:new a};this.getPayouts=(({id:t,authToken:s,service:i})=>async({params:r,onSuccess:e,onError:p})=>{var a,m;try{const u=await i.fetchPayouts(t,s,r);if(u.error)return p({error:h(u.error),code:n(null===(m=u.error)||void 0===m?void 0:m.code),severity:o.ERROR});{const t=Object.assign({},u.page_info);e({payouts:(null===(a=u.data)||void 0===a?void 0:a.map((t=>new c(t))))||[],pagingInfo:t})}}catch(t){const s=n(null==t?void 0:t.code);return p({error:t.message||t,code:s,severity:o.ERROR})}})(t),this.getPayoutCSV=m(t)}else this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:r.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR})}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=u({accountId:this.accountId,authToken:this.authToken,service:new d}))}render(){return i(j,{key:"5ec4cfd9c227dc5c993fe82972124649d7468617"},i("payouts-list-core",{key:"8e862e8b6c6cf861d342e72afec20d527f34f5c1",getPayouts:this.getPayouts,getPayoutCSV:this.getPayoutCSV,getSubAccounts:this.getSubAccounts,"onError-event":this.handleOnError,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{l as justifi_payouts_list}
@@ -1 +1 @@
1
- import{h as s,r as t,c as i}from"./p-DwYM91AU.js";import{c as e,F as r}from"./p-DiJD6Iqx.js";import{b as o,a,c as h}from"./p-BfYkosa4.js";import{i as n,a as p,b as l,c as m}from"./p-BHe87s0Y.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as c,a as d}from"./p-Cjcsf8ku.js";import"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import{C as j,B as u,b as f}from"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as v,J as b}from"./p-pV1ZX4A8.js";import{B as g}from"./p-DkOvNRJs.js";import{S as w}from"./p-BP2sTIQV.js";import{H as C}from"./p-C7m-gAAM.js";import"./p-CZfYo5-1.js";import{S as B}from"./p-VhOlg78I.js";import{B as y}from"./p-XYgDHrVL.js";import{m as S,b as D}from"./p-5aA7gjr5.js";import{B as x}from"./p-wYnnDDuR.js";import"./p-BFTU3MAI.js";import"./p-Cpp4qrH2.js";import"./p-DfKxeSrC.js";import"./p-CPpUGsw5.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";import"./p-BjCdImSF.js";import"./p-C8yN3uBj.js";import"./p-Dj_zevuD.js";import"./p-D2muobcE.js";const O=e(Object.assign(Object.assign({},o().fields),{legal_address:p(),additional_questions:a(),representative:n("representative")}));e(Object.assign(Object.assign({},h().fields),{legal_address:m(),additional_questions:a(),representative:l("representative")}));const k=O,A=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(B,{width:"25%"})),s("div",{class:"col-12"},s(B,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(B,{width:"50%"}),s(B,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(B,{width:"65%"}),s(B,{width:"35%"}))),I=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(B,{width:"40%",height:"40px"})),s(A,null),s(A,null),s(A,null)),Y=class{constructor(s){t(this,s),this.submitEvent=i(this,"submit-event"),this.clickEvent=i(this,"click-event"),this.errorEvent=i(this,"error-event"),this.isLoading=!1,this.isSaving=!1,this.country=j.USA,this.hideErrors=!1,this.formTitle="Business Information",this.removeTitle=!1,this.instantiateBusiness=s=>{const t=new u(s);this.country=t.country_of_establishment,this.formController.setInitialValues(Object.assign({},t))},this.sendData=async()=>{this.isSaving=!0;const s=this.formController.values.getValue(),t=this.formController.getInitialValues(),i=new u(Object.assign(Object.assign({},t),s)).payload;this.patchBusiness({payload:i,onSuccess:s=>{this.handleReponse(s)},onError:({error:s,code:t,severity:i})=>{this.errorMessage=s.message,this.errorEvent.emit({errorCode:t,message:s.message,severity:i})},final:()=>{this.isSaving=!1}})},this.validateAndSubmit=s=>{s.preventDefault(),this.formController.validateAndSubmit(this.sendData)}}componentWillLoad(){v(),this.analytics=new b(this),this.formController=new r(k),this.initializeApi()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}get title(){return this.removeTitle?"":this.formTitle}get disabledState(){return this.isSaving}get businessEndpoint(){return`entities/business/${this.businessId}`}initializeApi(){this.authToken&&this.businessId?(this.getBusiness=S({authToken:this.authToken,businessId:this.businessId,service:new x}),this.patchBusiness=D({authToken:this.authToken,businessId:this.businessId,service:new x}),this.getBusiness({onSuccess:s=>{this.instantiateBusiness(s.data)},onError:({error:s,code:t,severity:i})=>{this.errorMessage=s.message,this.errorEvent.emit({errorCode:t,message:s.message,severity:i})},final:()=>{this.isLoading=!1}})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:d.MISSING_PROPS,severity:c.ERROR})}handleReponse(s){s.error&&(this.errorMessage=f.patchData),this.submitEvent.emit({response:s}),this.instantiateBusiness(s.data)}render(){return s(w,null,this.isLoading?s(I,null):s("form",{onSubmit:this.validateAndSubmit},s("div",{class:"row gap-3"},s(C,{text:this.title}),s("form-alert",{text:this.errorMessage,hideAlert:this.hideErrors}),s("div",{class:"col-12 mb-4"},s("justifi-business-core-info",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("justifi-legal-address-form",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("justifi-additional-questions",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("justifi-business-representative",{formController:this.formController,country:this.country})),s("div",{class:"col-12 d-flex flex-row-reverse"},s(g,{type:"submit",disabled:this.disabledState,variant:"primary",onClick:()=>this.clickEvent.emit({name:y.submit}),isLoading:this.isSaving},"Submit")))))}};export{Y as justifi_business_form}
1
+ import{h as s,r as t,c as i}from"./p-DwYM91AU.js";import{c as e,F as r}from"./p-DiJD6Iqx.js";import{b as o,a,c as h}from"./p-Bo278yZD.js";import{i as n,a as p,b as l,c as m}from"./p-O4_LrrnE.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as c,a as d}from"./p-Cjcsf8ku.js";import"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import{C as u,B as j,b as f}from"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as v,J as b}from"./p-CeO5d98O.js";import{B as g}from"./p-DkOvNRJs.js";import{S as w}from"./p-BP2sTIQV.js";import{H as C}from"./p-C7m-gAAM.js";import"./p-CZfYo5-1.js";import{S as y}from"./p-VhOlg78I.js";import{B as O}from"./p-XYgDHrVL.js";import{m as B,b as D}from"./p-5aA7gjr5.js";import{B as S}from"./p-wYnnDDuR.js";import"./p-BFTU3MAI.js";import"./p-DopgIZQg.js";import"./p-DfKxeSrC.js";import"./p-CPpUGsw5.js";import"./p-BYsgavgS.js";import"./p-BS7OgSQe.js";import"./p-BeukOaOq.js";import"./p-C8yN3uBj.js";import"./p-Dj_zevuD.js";import"./p-D2muobcE.js";const x=e(Object.assign(Object.assign({},o().fields),{legal_address:p(),additional_questions:a(),representative:n("representative")}));e(Object.assign(Object.assign({},h().fields),{legal_address:m(),additional_questions:a(),representative:l("representative")}));const k=x,I=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(y,{width:"25%"})),s("div",{class:"col-12"},s(y,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(y,{width:"50%"}),s(y,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(y,{width:"65%"}),s(y,{width:"35%"}))),_=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(y,{width:"40%",height:"40px"})),s(I,null),s(I,null),s(I,null)),A=class{constructor(s){t(this,s),this.submitEvent=i(this,"submit-event"),this.clickEvent=i(this,"click-event"),this.errorEvent=i(this,"error-event"),this.isLoading=!1,this.isSaving=!1,this.country=u.USA,this.hideErrors=!1,this.formTitle="Business Information",this.removeTitle=!1,this.instantiateBusiness=s=>{const t=new j(s);this.country=t.country_of_establishment,this.formController.setInitialValues(Object.assign({},t))},this.sendData=async()=>{this.isSaving=!0;const s=this.formController.values.getValue(),t=this.formController.getInitialValues(),i=new j(Object.assign(Object.assign({},t),s)).payload;this.patchBusiness({payload:i,onSuccess:s=>{this.handleReponse(s)},onError:({error:s,code:t,severity:i})=>{this.errorMessage=s.message,this.errorEvent.emit({errorCode:t,message:s.message,severity:i})},final:()=>{this.isSaving=!1}})},this.validateAndSubmit=s=>{s.preventDefault(),this.formController.validateAndSubmit(this.sendData)}}componentWillLoad(){v(),this.analytics=new b(this),this.formController=new r(k),this.initializeApi()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}get title(){return this.removeTitle?"":this.formTitle}get disabledState(){return this.isSaving}get businessEndpoint(){return`entities/business/${this.businessId}`}initializeApi(){this.authToken&&this.businessId?(this.getBusiness=B({authToken:this.authToken,businessId:this.businessId,service:new S}),this.patchBusiness=D({authToken:this.authToken,businessId:this.businessId,service:new S}),this.getBusiness({onSuccess:s=>{this.instantiateBusiness(s.data)},onError:({error:s,code:t,severity:i})=>{this.errorMessage=s.message,this.errorEvent.emit({errorCode:t,message:s.message,severity:i})},final:()=>{this.isLoading=!1}})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:d.MISSING_PROPS,severity:c.ERROR})}handleReponse(s){s.error&&(this.errorMessage=f.patchData),this.submitEvent.emit({response:s}),this.instantiateBusiness(s.data)}render(){return s(w,null,this.isLoading?s(_,null):s("form",{onSubmit:this.validateAndSubmit},s("div",{class:"row gap-3"},s(C,{text:this.title}),s("form-alert",{text:this.errorMessage,hideAlert:this.hideErrors}),s("div",{class:"col-12 mb-4"},s("justifi-business-core-info",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("justifi-legal-address-form",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("justifi-additional-questions",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("justifi-business-representative",{formController:this.formController,country:this.country})),s("div",{class:"col-12 d-flex flex-row-reverse"},s(g,{type:"submit",disabled:this.disabledState,variant:"primary",onClick:()=>this.clickEvent.emit({name:O.submit}),isLoading:this.isSaving},"Submit")))))}};export{A as justifi_business_form}
@@ -1 +1 @@
1
- import{h as s,r as i,c as t}from"./p-DwYM91AU.js";import{an as e,am as r,af as o,D as l}from"./p-Dj_zevuD.js";import{S as d}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{c as n,J as a}from"./p-pV1ZX4A8.js";import{C as h,a as c}from"./p-Cjcsf8ku.js";import{B as u}from"./p-wYnnDDuR.js";import{B as v}from"./p-B5rtFhtR.js";import{m as p}from"./p-sCHf--Vc.js";import{S as m}from"./p-VhOlg78I.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{j as f,i as w,b as g}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-BH0Xfn-F.js";import{g as j,a as x}from"./p-D2muobcE.js";import{T as y}from"./p-ZrJKEEoy.js";import{k as b}from"./p-BS7OgSQe.js";import"./p-BjCdImSF.js";import"./p-C8yN3uBj.js";import"./p-BYsgavgS.js";const S=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(m,{width:"25%"})),s("div",{class:"col-12"},s(m,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(m,{width:"50%"}),s(m,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(m,{width:"65%"}),s(m,{width:"35%"}))),k=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(m,{width:"40%",height:"40px"})),s(S,null)),C=()=>s("div",{class:"terminal-selector-skeleton mt-4 rounded shadow-sm"},s("div",{class:"d-flex align-items-center gap-3"},s(m,{width:"125px",height:"125px",styles:{borderRadius:"8px"}}),s("div",{class:"flex-grow-1"},s("div",{class:"d-flex row flex-row"},s("div",{class:"col-6 flex-column"},s(m,null),s(m,{width:"60%"})),s("div",{class:"d-flex justify-content-end align-items-center gap-2 col-6"},s(m,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}),s(m,{width:"80px",height:"32px"}),s(m,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}))),s("div",{class:"mt-4"},s("div",{class:"d-flex flex-column gap-2"},s(m,null),s(m,null)))))),B=class{constructor(s){i(this,s),this.errorEvent=t(this,"error-event"),this.submitted=t(this,"submit-event"),this.shipping=!1,this.submitButtonText="Submit Order",this.loading={business:!0,terminals:!0},this.submitting=!1,this.error=null,this.totalQuantity=0}componentWillLoad(){this.order=new w({business_id:this.businessId,sub_account_id:this.accountId,order_type:this.shipping?g.boardingShipping:g.boardingOnly}),n(),this.analytics=new a(this),this.loadData()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}handleError(s,i,t){this.error={message:s,code:i,severity:t},this.errorEvent.emit({errorCode:i,message:s,severity:t})}loadData(){this.businessId&&this.authToken?(this.initializeGetBusiness(),this.initializeGetTerminalModels()):this.handleError("Invalid business id or auth token",c.MISSING_PROPS,h.ERROR)}initializeGetBusiness(){p({id:this.businessId,authToken:this.authToken,service:new u})({onSuccess:({business:s})=>{this.business=new v(s),this.loading.business=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.loading.business=!1}})}initializeGetTerminalModels(){(({id:s,authToken:i,service:t})=>async({onSuccess:e,onError:r})=>{var o,l,d,n;try{const a=await t.fetchTerminalModels(s,i);if(a.error)return r({error:x(a.error),code:j(null===(n=a.error)||void 0===n?void 0:n.code),severity:h.ERROR});e({terminals:(null===(l=null===(o=a.data)||void 0===o?void 0:o.terminal_order_models)||void 0===l?void 0:l.map((s=>new f(s))))||[],orderLimit:null===(d=a.data)||void 0===d?void 0:d.order_limit})}catch(s){const i=j(null==s?void 0:s.code);return r({error:s.message||s,code:i,severity:h.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new y})({onSuccess:({terminals:s,orderLimit:i})=>{this.terminalModels=s,this.orderLimit=i,this.loading.terminals=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.loading.terminals=!1}})}submitOrder(){const s=(({authToken:s,service:i,apiOrigin:t="https://wc-proxy.justifi.ai"})=>async({terminalOrder:e,onSuccess:r,onError:o})=>{var l;try{const d=await i.orderTerminals(s,e,t);if(d.error)return o({error:x(d.error),code:j(null===(l=d.error)||void 0===l?void 0:l.code),severity:h.ERROR});{const{data:s}=d;r({data:s})}}catch(s){const i=j(null==s?void 0:s.code);return o({error:s.message||s,code:i,severity:h.ERROR})}})({authToken:this.authToken,service:new y});this.submitting=!0,s({terminalOrder:this.order.payload,onSuccess:({data:s})=>{this.submitted.emit(s),this.submitting=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.submitting=!1}})}onSelectedQuantityChange(s){this.order.updateTerminal(s.detail.modelName,s.detail.quantity),this.totalQuantity=this.order.totalQuantity}renderLoading(){return s("div",null,this.loading.business&&s(k,null),this.loading.terminals&&s("div",{class:"mt-5"},s(C,null),s(C,null),s(C,null)))}renderBusinessDetails(){var i,t,o,l,d,n,a,h;if(!this.loading.business&&this.business)return s("div",{class:"d-flex flex-column gap-4 mb-5 pt-5"},s("div",{class:"row"},s("div",{class:"col-12"},s("h2",{part:r},this.business.legal_name))),s("div",{class:"row"},s("div",{class:"col-6"},s("h5",{part:e},"Representative:"),s("div",null,s("div",null,null===(t=null===(i=this.business)||void 0===i?void 0:i.representative)||void 0===t?void 0:t.name),s("div",null,null===(l=null===(o=this.business)||void 0===o?void 0:o.representative)||void 0===l?void 0:l.title),s("div",null,null===(n=null===(d=this.business)||void 0===d?void 0:d.representative)||void 0===n?void 0:n.email),s("div",null,b(null===(h=null===(a=this.business)||void 0===a?void 0:a.representative)||void 0===h?void 0:h.phone)))),s("div",{class:"col-6"},s("h5",{part:e},this.shipping?"Shipping Address:":"Business Address:"),s("div",null,this.business.legal_address.line1,this.business.legal_address.line2?`, ${this.business.legal_address.line2}`:"",s("br",null),this.business.legal_address.city,", ",this.business.legal_address.state," ",this.business.legal_address.postal_code))))}renderTerminals(){if(!this.loading.terminals&&this.terminalModels)return s("div",{class:"d-flex flex-column gap-2 mt-5"},this.terminalModels.map((i=>s("terminal-quantity-selector",{modelName:i.model_name,description:i.description,imageUrl:i.image_url,helpUrl:i.help_url,limit:this.orderLimit-this.order.totalQuantity,onSelectedQuantityChange:this.onSelectedQuantityChange.bind(this)}))))}renderOrderSection(){return s("div",{class:"mt-3"},s("div",{class:"text-end"},"Order limit: ",this.orderLimit),s("div",{class:"d-flex justify-content-end mt-3"},s("button",{class:"btn btn-primary submit-btn",onClick:this.submitOrder.bind(this),disabled:0===this.order.totalQuantity||this.submitting,part:o},this.submitting?"Submitting...":this.submitButtonText)))}render(){return s(d,{key:"f9c515ea3cf3dd616d894cef2cc64789663608e8"},s("div",{key:"6b3d49555fe21563c251896300d313bed336f9fd",part:l},this.renderLoading(),this.renderBusinessDetails(),this.renderTerminals(),this.renderOrderSection()))}};export{B as justifi_order_terminals}
1
+ import{h as s,r as i,c as t}from"./p-DwYM91AU.js";import{an as e,am as r,af as o,D as l}from"./p-Dj_zevuD.js";import{S as d}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{c as n,J as a}from"./p-CeO5d98O.js";import{C as h,a as c}from"./p-Cjcsf8ku.js";import{B as u}from"./p-wYnnDDuR.js";import{B as v}from"./p-B5rtFhtR.js";import{m as p}from"./p-sCHf--Vc.js";import{S as m}from"./p-VhOlg78I.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{j as f,i as w,b as g}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-BH0Xfn-F.js";import{g as j,a as x}from"./p-D2muobcE.js";import{T as y}from"./p-ZrJKEEoy.js";import{k as b}from"./p-BS7OgSQe.js";import"./p-BeukOaOq.js";import"./p-C8yN3uBj.js";import"./p-BYsgavgS.js";const S=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(m,{width:"25%"})),s("div",{class:"col-12"},s(m,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(m,{width:"50%"}),s(m,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(m,{width:"65%"}),s(m,{width:"35%"}))),k=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(m,{width:"40%",height:"40px"})),s(S,null)),C=()=>s("div",{class:"terminal-selector-skeleton mt-4 rounded shadow-sm"},s("div",{class:"d-flex align-items-center gap-3"},s(m,{width:"125px",height:"125px",styles:{borderRadius:"8px"}}),s("div",{class:"flex-grow-1"},s("div",{class:"d-flex row flex-row"},s("div",{class:"col-6 flex-column"},s(m,null),s(m,{width:"60%"})),s("div",{class:"d-flex justify-content-end align-items-center gap-2 col-6"},s(m,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}),s(m,{width:"80px",height:"32px"}),s(m,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}))),s("div",{class:"mt-4"},s("div",{class:"d-flex flex-column gap-2"},s(m,null),s(m,null)))))),O=class{constructor(s){i(this,s),this.errorEvent=t(this,"error-event"),this.submitted=t(this,"submit-event"),this.shipping=!1,this.submitButtonText="Submit Order",this.loading={business:!0,terminals:!0},this.submitting=!1,this.error=null,this.totalQuantity=0}componentWillLoad(){this.order=new w({business_id:this.businessId,sub_account_id:this.accountId,order_type:this.shipping?g.boardingShipping:g.boardingOnly}),n(),this.analytics=new a(this),this.loadData()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}handleError(s,i,t){this.error={message:s,code:i,severity:t},this.errorEvent.emit({errorCode:i,message:s,severity:t})}loadData(){this.businessId&&this.authToken?(this.initializeGetBusiness(),this.initializeGetTerminalModels()):this.handleError("Invalid business id or auth token",c.MISSING_PROPS,h.ERROR)}initializeGetBusiness(){p({id:this.businessId,authToken:this.authToken,service:new u})({onSuccess:({business:s})=>{this.business=new v(s),this.loading.business=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.loading.business=!1}})}initializeGetTerminalModels(){(({id:s,authToken:i,service:t})=>async({onSuccess:e,onError:r})=>{var o,l,d,n;try{const a=await t.fetchTerminalModels(s,i);if(a.error)return r({error:x(a.error),code:j(null===(n=a.error)||void 0===n?void 0:n.code),severity:h.ERROR});e({terminals:(null===(l=null===(o=a.data)||void 0===o?void 0:o.terminal_order_models)||void 0===l?void 0:l.map((s=>new f(s))))||[],orderLimit:null===(d=a.data)||void 0===d?void 0:d.order_limit})}catch(s){const i=j(null==s?void 0:s.code);return r({error:s.message||s,code:i,severity:h.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new y})({onSuccess:({terminals:s,orderLimit:i})=>{this.terminalModels=s,this.orderLimit=i,this.loading.terminals=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.loading.terminals=!1}})}submitOrder(){const s=(({authToken:s,service:i,apiOrigin:t="https://wc-proxy.justifi.ai"})=>async({terminalOrder:e,onSuccess:r,onError:o})=>{var l;try{const d=await i.orderTerminals(s,e,t);if(d.error)return o({error:x(d.error),code:j(null===(l=d.error)||void 0===l?void 0:l.code),severity:h.ERROR});{const{data:s}=d;r({data:s})}}catch(s){const i=j(null==s?void 0:s.code);return o({error:s.message||s,code:i,severity:h.ERROR})}})({authToken:this.authToken,service:new y});this.submitting=!0,s({terminalOrder:this.order.payload,onSuccess:({data:s})=>{this.submitted.emit(s),this.submitting=!1},onError:({error:s,code:i,severity:t})=>{this.handleError(s,i,t),this.submitting=!1}})}onSelectedQuantityChange(s){this.order.updateTerminal(s.detail.modelName,s.detail.quantity),this.totalQuantity=this.order.totalQuantity}renderLoading(){return s("div",null,this.loading.business&&s(k,null),this.loading.terminals&&s("div",{class:"mt-5"},s(C,null),s(C,null),s(C,null)))}renderBusinessDetails(){var i,t,o,l,d,n,a,h;if(!this.loading.business&&this.business)return s("div",{class:"d-flex flex-column gap-4 mb-5 pt-5"},s("div",{class:"row"},s("div",{class:"col-12"},s("h2",{part:r},this.business.legal_name))),s("div",{class:"row"},s("div",{class:"col-6"},s("h5",{part:e},"Representative:"),s("div",null,s("div",null,null===(t=null===(i=this.business)||void 0===i?void 0:i.representative)||void 0===t?void 0:t.name),s("div",null,null===(l=null===(o=this.business)||void 0===o?void 0:o.representative)||void 0===l?void 0:l.title),s("div",null,null===(n=null===(d=this.business)||void 0===d?void 0:d.representative)||void 0===n?void 0:n.email),s("div",null,b(null===(h=null===(a=this.business)||void 0===a?void 0:a.representative)||void 0===h?void 0:h.phone)))),s("div",{class:"col-6"},s("h5",{part:e},this.shipping?"Shipping Address:":"Business Address:"),s("div",null,this.business.legal_address.line1,this.business.legal_address.line2?`, ${this.business.legal_address.line2}`:"",s("br",null),this.business.legal_address.city,", ",this.business.legal_address.state," ",this.business.legal_address.postal_code))))}renderTerminals(){if(!this.loading.terminals&&this.terminalModels)return s("div",{class:"d-flex flex-column gap-2 mt-5"},this.terminalModels.map((i=>s("terminal-quantity-selector",{modelName:i.model_name,description:i.description,imageUrl:i.image_url,helpUrl:i.help_url,limit:this.orderLimit-this.order.totalQuantity,onSelectedQuantityChange:this.onSelectedQuantityChange.bind(this)}))))}renderOrderSection(){return s("div",{class:"mt-3"},s("div",{class:"text-end"},"Order limit: ",this.orderLimit),s("div",{class:"d-flex justify-content-end mt-3"},s("button",{class:"btn btn-primary submit-btn",onClick:this.submitOrder.bind(this),disabled:0===this.order.totalQuantity||this.submitting,part:o},this.submitting?"Submitting...":this.submitButtonText)))}render(){return s(d,{key:"f9c515ea3cf3dd616d894cef2cc64789663608e8"},s("div",{key:"6b3d49555fe21563c251896300d313bed336f9fd",part:l},this.renderLoading(),this.renderBusinessDetails(),this.renderTerminals(),this.renderOrderSection()))}};export{O as justifi_order_terminals}
@@ -1 +1 @@
1
- import{h as t,r as e,c as a}from"./p-DwYM91AU.js";import{c as i}from"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as s,a as o}from"./p-Cjcsf8ku.js";import{h as r}from"./p-CPKSE7M4.js";import{p as c}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as n,J as h}from"./p-pV1ZX4A8.js";import{g as p,a as d}from"./p-D2muobcE.js";import{P as l}from"./p-D0YDz3L6.js";import{T as f,l as u,a as m,b,c as y,d as _,e as w,f as j,g as T,h as g,i as v,j as k,k as D}from"./p-B-7rLJIB.js";import{S as C}from"./p-BP2sTIQV.js";import{T as S}from"./p-CZfYo5-1.js";import{a as P}from"./p-BS7OgSQe.js";import{S as I,T as B}from"./p-Dj_zevuD.js";import"./p-BYsgavgS.js";import"./p-BjCdImSF.js";import"./p-C8yN3uBj.js";import"./p-CgbXzEbz.js";const E={id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of each transaction"},"ID"),account_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the account associated with each transaction"},"Account ID"),payout_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the payout associated with each transaction"},"Payout ID"),financial_transaction_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the financial transaction associated with the payment balance transaction"},"Financial Transaction ID"),amount:()=>t("th",{part:I,scope:"col",title:"The dollar amount of each transaction"},"Amount"),fee:()=>t("th",{part:I,scope:"col",title:"The fee associated with each transaction"},"Fee"),net:()=>t("th",{part:I,scope:"col",title:"The net amount of each transaction"},"Net"),currency:()=>t("th",{part:I,scope:"col",title:"The currency of each transaction"},"Currency"),description:()=>t("th",{part:I,scope:"col",title:"The description of each transaction"},"Description"),source_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the source object associated with the payment balance transaction"},"Source ID"),txn_type:()=>t("th",{part:I,scope:"col",title:"The type of each transaction"},"Type"),created_at:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction was made"},"Processed On"),available_on:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction will be available"},"Available On"),updated_at:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction was last updated"},"Updated On")},O={fee:"Fee",payment:"Payment",payout:"Payout",seller_payment_refund:"Seller Payment Refund",dispute_amount_collected:"Dispute Amount Collected",dispute_fee_collected:"Dispute Fee Collected",seller_payment:"Seller Payment",transfer:"Transfer",partner_platform_proceeds_credit:"Partner Platform Proceeds Credit"},q={id:e=>t("td",{part:B(e.id)},e.id),account_id:e=>t("td",{part:B(e.account_id)},e.account_id),payout_id:e=>t("td",{part:B(e.payout_id)},e.payout_id),financial_transaction_id:e=>t("td",{part:B(e.financial_transaction_id)},e.financial_transaction_id),amount:e=>t("td",{part:B(e.amount)},e.formattedPaymentAmount(e.amount)),fee:e=>t("td",{part:B(e.fee)},e.formattedPaymentAmount(e.fee)),net:e=>t("td",{part:B(e.net)},e.formattedPaymentAmount(e.net)),currency:e=>t("td",{part:B(e.currency)},e.currency),description:e=>t("td",{part:B(e.description)},e.description),source_id:e=>t("td",{part:B(e.source_id)},e.source_id),txn_type:e=>t("td",{part:B(e.txn_type)},O[e.txn_type]),created_at:e=>t("td",{part:B(e.created_at)},t("div",{class:"fw-bold"},P(e.created_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.created_at,{showTime:!0}))),available_on:e=>t("td",{part:B(e.available_on)},t("div",{class:"fw-bold"},P(e.available_on,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.available_on,{showTime:!0}))),updated_at:e=>t("td",{part:B(e.updated_at)},t("div",{class:"fw-bold"},P(e.updated_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.updated_at,{showTime:!0})))},A=class{constructor(t){e(this,t),this.clickEvent=a(this,"click-event"),this.errorEvent=a(this,"error-event"),this.balanceTransactions=[],this.isLoading=!0,this.errorMessage=null,this.paging=c,this.pagingParams={},this.columns="created_at,txn_type,description,amount,fee,net",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:S.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:S.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const a=this.balanceTransactions.find((t=>t.id===e));this.clickEvent.emit({name:S.row,data:a})}}componentWillLoad(){this.transactionsTable=new f(this.balanceTransactions,this.columns,E,q),n(),this.analytics=new h(this),this.initializeApi()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeApi()}handleError(t,e,a){this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:e,severity:a})}initializeApi(){this.payoutId&&this.authToken?(({accountId:t,authToken:e,service:a})=>async({params:i,onSuccess:o,onError:c,final:n})=>{var h;try{const n=await a.fetchPayoutTransactions(t,e,i);n.error?c({error:d(n.error),code:p(null===(h=n.error)||void 0===h?void 0:h.code),severity:s.ERROR}):o({balanceTransactions:n.data.map((t=>new r(t))),pagingInfo:Object.assign({},n.page_info)})}catch(t){const e=p(null==t?void 0:t.code);c({error:d(t),code:e,severity:s.ERROR})}finally{n()}})({accountId:i.accountId,authToken:this.authToken,service:new l})({params:this.requestParams,onSuccess:({balanceTransactions:t,pagingInfo:e})=>{this.balanceTransactions=t,this.paging=e,this.transactionsTable.collectionData=this.balanceTransactions},onError:({error:t,code:e,severity:a})=>{this.errorMessage=t.message,this.handleError(t,e,a)},final:()=>{this.isLoading=!1}}):(this.errorMessage="payout-id and auth-token props are required",this.handleError(o.MISSING_PROPS,this.errorMessage,s.ERROR))}get entityId(){return this.balanceTransactions.map((t=>t.id))}get showEmptyState(){return!this.isLoading&&!this.errorMessage&&this.transactionsTable.rowData.length<1}get showErrorState(){return!this.isLoading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.isLoading}get requestParams(){return Object.assign({payout_id:this.payoutId,limit:"15"},this.pagingParams)}render(){return t(C,{key:"ab6de6bc1bd8b389c3853cc8c9ff0a52ac79e139"},t(u,{key:"3946c0161a51c292e53776df23ef0aa297ab8a24"},t(m,{key:"7f7acd0813a8eb710889d540b6c5b7ae6831e47a"},t(b,{key:"eb0b11273c85116093d119bdbc8984f7c71729f0"},t(y,{key:"5485e54cca61a69a48b4a0eb70ff4cfbf409cfab"},this.transactionsTable.columnData.map((t=>t)))),t(_,{key:"778592bd28c2ed42fcb751f695ef97b75c911c17"},t(w,{key:"2123dc933b4e16f2bc4588a6ec4357d3067a919f",columnSpan:this.transactionsTable.columnKeys.length,isLoading:this.isLoading}),t(j,{key:"e13e4ba98217c4c41cc406d7f6bde34831771952",isEmpty:this.showEmptyState,columnSpan:this.transactionsTable.columnKeys.length}),t(T,{key:"c837011abb597d3811cdc5636a457afab49224f6",columnSpan:this.transactionsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.transactionsTable.rowData.map(((e,a)=>t(g,{"data-test-id":"table-row","data-row-entity-id":this.entityId[a],onClick:this.rowClickHandler},e)))),this.paging&&t(v,{key:"a189800b2a36f8880bb7fb2ab60b8b2afd24d760"},t(k,{key:"ae78dbea1986d6c0ee493bf26d8bb01ad294a1e2"},t(D,{key:"2146861e294be47a5c63f3354ff6744ad71b4d70",colSpan:this.transactionsTable.columnData.length},t("pagination-menu",{key:"2ab6bfa9a7534c063e603eaf25e4e6f44cbda859",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["propChanged"],payoutId:["propChanged"],authToken:["propChanged"]}}};export{A as justifi_payout_transactions_list}
1
+ import{h as t,r as e,c as a}from"./p-DwYM91AU.js";import{c as i}from"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as s,a as o}from"./p-Cjcsf8ku.js";import{h as r}from"./p-CPKSE7M4.js";import{p as c}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as n,J as h}from"./p-CeO5d98O.js";import{g as p,a as d}from"./p-D2muobcE.js";import{P as l}from"./p-D0YDz3L6.js";import{T as f,l as u,a as m,b,c as y,d as _,e as w,f as j,g as T,h as g,i as v,j as k,k as D}from"./p-B-7rLJIB.js";import{S as C}from"./p-BP2sTIQV.js";import{T as S}from"./p-CZfYo5-1.js";import{a as P}from"./p-BS7OgSQe.js";import{S as I,T as O}from"./p-Dj_zevuD.js";import"./p-BYsgavgS.js";import"./p-BeukOaOq.js";import"./p-C8yN3uBj.js";import"./p-CgbXzEbz.js";const B={id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of each transaction"},"ID"),account_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the account associated with each transaction"},"Account ID"),payout_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the payout associated with each transaction"},"Payout ID"),financial_transaction_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the financial transaction associated with the payment balance transaction"},"Financial Transaction ID"),amount:()=>t("th",{part:I,scope:"col",title:"The dollar amount of each transaction"},"Amount"),fee:()=>t("th",{part:I,scope:"col",title:"The fee associated with each transaction"},"Fee"),net:()=>t("th",{part:I,scope:"col",title:"The net amount of each transaction"},"Net"),currency:()=>t("th",{part:I,scope:"col",title:"The currency of each transaction"},"Currency"),description:()=>t("th",{part:I,scope:"col",title:"The description of each transaction"},"Description"),source_id:()=>t("th",{part:I,scope:"col",title:"The unique identifier of the source object associated with the payment balance transaction"},"Source ID"),txn_type:()=>t("th",{part:I,scope:"col",title:"The type of each transaction"},"Type"),created_at:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction was made"},"Processed On"),available_on:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction will be available"},"Available On"),updated_at:()=>t("th",{part:I,scope:"col",title:"The date and time each transaction was last updated"},"Updated On")},E={fee:"Fee",payment:"Payment",payout:"Payout",seller_payment_refund:"Seller Payment Refund",dispute_amount_collected:"Dispute Amount Collected",dispute_fee_collected:"Dispute Fee Collected",seller_payment:"Seller Payment",transfer:"Transfer",partner_platform_proceeds_credit:"Partner Platform Proceeds Credit"},q={id:e=>t("td",{part:O(e.id)},e.id),account_id:e=>t("td",{part:O(e.account_id)},e.account_id),payout_id:e=>t("td",{part:O(e.payout_id)},e.payout_id),financial_transaction_id:e=>t("td",{part:O(e.financial_transaction_id)},e.financial_transaction_id),amount:e=>t("td",{part:O(e.amount)},e.formattedPaymentAmount(e.amount)),fee:e=>t("td",{part:O(e.fee)},e.formattedPaymentAmount(e.fee)),net:e=>t("td",{part:O(e.net)},e.formattedPaymentAmount(e.net)),currency:e=>t("td",{part:O(e.currency)},e.currency),description:e=>t("td",{part:O(e.description)},e.description),source_id:e=>t("td",{part:O(e.source_id)},e.source_id),txn_type:e=>t("td",{part:O(e.txn_type)},E[e.txn_type]),created_at:e=>t("td",{part:O(e.created_at)},t("div",{class:"fw-bold"},P(e.created_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.created_at,{showTime:!0}))),available_on:e=>t("td",{part:O(e.available_on)},t("div",{class:"fw-bold"},P(e.available_on,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.available_on,{showTime:!0}))),updated_at:e=>t("td",{part:O(e.updated_at)},t("div",{class:"fw-bold"},P(e.updated_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},P(e.updated_at,{showTime:!0})))},x=class{constructor(t){e(this,t),this.clickEvent=a(this,"click-event"),this.errorEvent=a(this,"error-event"),this.balanceTransactions=[],this.isLoading=!0,this.errorMessage=null,this.paging=c,this.pagingParams={},this.columns="created_at,txn_type,description,amount,fee,net",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:S.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:S.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const a=this.balanceTransactions.find((t=>t.id===e));this.clickEvent.emit({name:S.row,data:a})}}componentWillLoad(){this.transactionsTable=new f(this.balanceTransactions,this.columns,B,q),n(),this.analytics=new h(this),this.initializeApi()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeApi()}handleError(t,e,a){this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:e,severity:a})}initializeApi(){this.payoutId&&this.authToken?(({accountId:t,authToken:e,service:a})=>async({params:i,onSuccess:o,onError:c,final:n})=>{var h;try{const n=await a.fetchPayoutTransactions(t,e,i);n.error?c({error:d(n.error),code:p(null===(h=n.error)||void 0===h?void 0:h.code),severity:s.ERROR}):o({balanceTransactions:n.data.map((t=>new r(t))),pagingInfo:Object.assign({},n.page_info)})}catch(t){const e=p(null==t?void 0:t.code);c({error:d(t),code:e,severity:s.ERROR})}finally{n()}})({accountId:i.accountId,authToken:this.authToken,service:new l})({params:this.requestParams,onSuccess:({balanceTransactions:t,pagingInfo:e})=>{this.balanceTransactions=t,this.paging=e,this.transactionsTable.collectionData=this.balanceTransactions},onError:({error:t,code:e,severity:a})=>{this.errorMessage=t.message,this.handleError(t,e,a)},final:()=>{this.isLoading=!1}}):(this.errorMessage="payout-id and auth-token props are required",this.handleError(o.MISSING_PROPS,this.errorMessage,s.ERROR))}get entityId(){return this.balanceTransactions.map((t=>t.id))}get showEmptyState(){return!this.isLoading&&!this.errorMessage&&this.transactionsTable.rowData.length<1}get showErrorState(){return!this.isLoading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.isLoading}get requestParams(){return Object.assign({payout_id:this.payoutId,limit:"15"},this.pagingParams)}render(){return t(C,{key:"ab6de6bc1bd8b389c3853cc8c9ff0a52ac79e139"},t(u,{key:"3946c0161a51c292e53776df23ef0aa297ab8a24"},t(m,{key:"7f7acd0813a8eb710889d540b6c5b7ae6831e47a"},t(b,{key:"eb0b11273c85116093d119bdbc8984f7c71729f0"},t(y,{key:"5485e54cca61a69a48b4a0eb70ff4cfbf409cfab"},this.transactionsTable.columnData.map((t=>t)))),t(_,{key:"778592bd28c2ed42fcb751f695ef97b75c911c17"},t(w,{key:"2123dc933b4e16f2bc4588a6ec4357d3067a919f",columnSpan:this.transactionsTable.columnKeys.length,isLoading:this.isLoading}),t(j,{key:"e13e4ba98217c4c41cc406d7f6bde34831771952",isEmpty:this.showEmptyState,columnSpan:this.transactionsTable.columnKeys.length}),t(T,{key:"c837011abb597d3811cdc5636a457afab49224f6",columnSpan:this.transactionsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.transactionsTable.rowData.map(((e,a)=>t(g,{"data-test-id":"table-row","data-row-entity-id":this.entityId[a],onClick:this.rowClickHandler},e)))),this.paging&&t(v,{key:"a189800b2a36f8880bb7fb2ab60b8b2afd24d760"},t(k,{key:"ae78dbea1986d6c0ee493bf26d8bb01ad294a1e2"},t(D,{key:"2146861e294be47a5c63f3354ff6744ad71b4d70",colSpan:this.transactionsTable.columnData.length},t("pagination-menu",{key:"2ab6bfa9a7534c063e603eaf25e4e6f44cbda859",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["propChanged"],payoutId:["propChanged"],authToken:["propChanged"]}}};export{x as justifi_payout_transactions_list}
@@ -0,0 +1 @@
1
+ import{h as t,r as e,c as a}from"./p-DwYM91AU.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as s,a as i}from"./p-Cjcsf8ku.js";import{g as r}from"./p-CPKSE7M4.js";import{p as n}from"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{c as o,J as c}from"./p-CeO5d98O.js";import{g as p,a as h}from"./p-D2muobcE.js";import{P as d}from"./p-C9_8N76_.js";import{T as f,l,a as u,b as m,c as y,d as b,e as _,f as g,g as j,h as T,i as k,j as w,k as v}from"./p-B-7rLJIB.js";import{S as C}from"./p-BP2sTIQV.js";import{T as D}from"./p-CZfYo5-1.js";import{a as S}from"./p-BS7OgSQe.js";import{S as R,T as B}from"./p-Dj_zevuD.js";import"./p-BYsgavgS.js";import"./p-BeukOaOq.js";import"./p-C8yN3uBj.js";import"./p-CgbXzEbz.js";const F={created_at:()=>t("th",{part:R,scope:"col",title:"The date and time each transaction was made"},"Processed On"),type:()=>t("th",{part:R,scope:"col",title:"The type of each transaction"},"Type"),id:()=>t("th",{part:R,scope:"col",title:"The unique identifier of each transaction"},"ID"),amount:()=>t("th",{part:R,scope:"col",title:"The dollar amount of each transaction",class:"text-end"},"Amount"),balance:()=>t("th",{part:R,scope:"col",title:"The running total amount of this payment that belongs to you",class:"text-end"},"Balance"),currency:()=>t("th",{part:R,scope:"col",title:"The currency of each transaction"},"Currency"),financial_transaction_id:()=>t("th",{part:R,scope:"col",title:"The unique identifier of the financial transaction associated with the payment balance transaction"},"Financial Transaction ID"),payment_id:()=>t("th",{part:R,scope:"col",title:"The unique identifier of the payment associated with the payment balance transaction"},"Payment ID"),payment_balance_txn_type:()=>t("th",{part:R,scope:"col",title:"The type of the payment balance transaction"},"Transaction Type"),source_id:()=>t("th",{part:R,scope:"col",title:"The unique identifier of the source object associated with the payment balance transaction"},"Source ID"),source_type:()=>t("th",{part:R,scope:"col",title:"The type of the source object associated with the payment balance transaction"},"Source Type")},I={ach_return:"ACH Return",ach_return_fee:"ACH Return Fee",dispute:"Dispute",dispute_fee:"Dispute Fee",dispute_fee_refund:"Dispute Fee Refund",dispute_refund:"Dispute Refund",payment:"Payment",payment_fee:"Fee",refund:"Refund",fee_refund:"Fee Refund",application_fee_returned:"Application Fee Returned",refund_failure:"Refund Failure",void:"Void"},x={created_at:(e,a)=>t("td",{part:B(a)},t("div",{class:"fw-bold"},S(e.created_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},S(e.created_at,{showTime:!0}))),type:(e,a)=>t("td",{part:B(a)},I[e.payment_balance_txn_type]),id:(e,a)=>t("td",{part:B(a)},e.id),amount:(e,a)=>t("td",{part:B(a),class:"text-end"},e.formattedPaymentAmount(e.amount)),balance:(e,a)=>t("td",{part:B(a),class:"text-end"},e.formattedPaymentAmount(e.balance)),currency:(e,a)=>t("td",{part:B(a)},e.currency),financial_transaction_id:(e,a)=>t("td",{part:B(a)},e.financial_transaction_id),payment_id:(e,a)=>t("td",{part:B(a)},e.payment_id),payment_balance_txn_type:(e,a)=>t("td",{part:B(a)},e.payment_balance_txn_type),source_id:(e,a)=>t("td",{part:B(a)},e.source_id),source_type:(e,a)=>t("td",{part:B(a)},e.source_type)},E=class{constructor(t){e(this,t),this.clickEvent=a(this,"click-event"),this.errorEvent=a(this,"error-event"),this.balanceTransactions=[],this.isLoading=!0,this.errorMessage=null,this.paging=n,this.pagingParams={},this.columns="created_at,type,id,amount,balance",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:D.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:D.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const a=this.balanceTransactions.find((t=>t.id===e));this.clickEvent.emit({name:D.row,data:a})}}componentWillLoad(){this.transactionsTable=new f(this.balanceTransactions,this.columns,F,x),o(),this.analytics=new c(this),this.initializeApi()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeApi()}handleError(t,e,a){this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:e,severity:a})}initializeApi(){this.paymentId&&this.authToken?(({id:t,authToken:e,service:a})=>async({params:i,onSuccess:n,onError:o,final:c})=>{var d;try{const c=await a.fetchPaymentTransactions(t,e,i);c.error?o({error:h(c.error),code:p(null===(d=c.error)||void 0===d?void 0:d.code),severity:s.ERROR}):n({balanceTransactions:c.data.map((t=>new r(t))),pagingInfo:Object.assign({},c.page_info)})}catch(t){const e=p(null==t?void 0:t.code);o({error:h(t),code:e,severity:s.ERROR})}finally{c()}})({id:this.paymentId,authToken:this.authToken,service:new d})({params:this.pagingParams,onSuccess:({balanceTransactions:t,pagingInfo:e})=>{this.balanceTransactions=t,this.paging=e,this.transactionsTable.collectionData=this.balanceTransactions},onError:({error:t,code:e,severity:a})=>{this.errorMessage=t.message,this.handleError(t,e,a)},final:()=>{this.isLoading=!1}}):(this.errorMessage="payment-id and auth-token props are required",this.handleError(i.MISSING_PROPS,this.errorMessage,s.ERROR))}get entityId(){return this.balanceTransactions.map((t=>t.id))}get showEmptyState(){return!this.isLoading&&!this.errorMessage&&this.transactionsTable.rowData.length<1}get showErrorState(){return!this.isLoading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.isLoading}render(){return t(C,{key:"ce4fd1549223738580d3a4e9195f535619491f5a"},t(l,{key:"0991e7ca748e75fa42e96be1dd1c9e9d2c876db9"},t(u,{key:"1b5d58cbf6f27fdf2faef658ae6148ee642ad3fe"},t(m,{key:"5eaef864fe0072cd4557a0585a409572f6806969"},t(y,{key:"a9c35dd1c0031da4a82207a4313c9a521729db40"},this.transactionsTable.columnData.map((t=>t)))),t(b,{key:"1ed790fcc17bbb6a93f6eaf18b741fc3b2e80855"},t(_,{key:"64570f5736317dfabc97a7967dfa52dbc0dd384c",columnSpan:this.transactionsTable.columnKeys.length,isLoading:this.isLoading}),t(g,{key:"45d4d52687e203de3c5f45e406862b882c03757c",isEmpty:this.showEmptyState,columnSpan:this.transactionsTable.columnKeys.length}),t(j,{key:"b8c941adc6bad5e40edd33b69231b668f587f16b",columnSpan:this.transactionsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.transactionsTable.rowData.map(((e,a)=>t(T,{"data-test-id":"table-row","data-row-entity-id":this.entityId[a],onClick:this.rowClickHandler},e)))),this.paging&&t(k,{key:"a76f922158b408ff6a70c35a47531405c012aaae"},t(w,{key:"4cf90633de51f6e9286481300cbbe0f0183f1bfb"},t(v,{key:"c06c168e8ba7c3115eab18c8366362be16582f86",colSpan:this.transactionsTable.columnData.length},t("pagination-menu",{key:"f08aa685537d1ba529f5506d74bdc20d0352dd2b",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["propChanged"],paymentId:["propChanged"],authToken:["propChanged"]}}};export{E as justifi_payment_transactions_list}
@@ -1 +1 @@
1
- import{r as t,c as s,h as r}from"./p-DwYM91AU.js";import{P as i}from"./p-C9_8N76_.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as o,a as e}from"./p-Cjcsf8ku.js";import{P as p}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as a,a as n}from"./p-D2muobcE.js";import{c,J as m}from"./p-pV1ZX4A8.js";import{S as h}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d}from"./p-C9Ho60F2.js";import"./p-C8yN3uBj.js";import"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-BjCdImSF.js";import"./p-BB3MQDQq.js";import"./p-Cu1FEdFr.js";import"./p-Dj_zevuD.js";const j=class{constructor(r){t(this,r),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=d,this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){c(),this.analytics=new m(this),this.initializeGetPayments()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetPayments()}initializeGetPayments(){this.accountId&&this.authToken?this.getPayments=(({id:t,authToken:s,service:r})=>async({params:i,onSuccess:e,onError:c,final:m})=>{var h,d;try{const m=await r.fetchPayments(t,s,i);if(m.error)return c({error:n(m.error),code:a(null===(d=m.error)||void 0===d?void 0:d.code),severity:o.ERROR});{const t=Object.assign({},m.page_info);e({payments:(null===(h=m.data)||void 0===h?void 0:h.map((t=>new p(t))))||[],pagingInfo:t})}}catch(t){const s=a(null==t?void 0:t.code);return c({error:t.message||t,code:s,severity:o.ERROR})}finally{return m()}})({id:this.accountId,authToken:this.authToken,service:new i}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:e.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}render(){return r(h,{key:"1e1f5cc087e917c65e7dbabaf21b355dd3261206"},r("payments-list-core",{key:"318b81a8eaacb70cc333efb9159279bc9310dd32",getPayments:this.getPayments,"onError-event":this.handleErrorEvent,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{j as justifi_payments_list}
1
+ import{r as t,c as s,h as r}from"./p-DwYM91AU.js";import{P as i}from"./p-C9_8N76_.js";import"./p-tGDdRx0W.js";import"./p-HXpYMWUU.js";import{C as o,a as e}from"./p-Cjcsf8ku.js";import{P as p}from"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as a,a as n}from"./p-D2muobcE.js";import{c,J as m}from"./p-CeO5d98O.js";import{S as h}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{d}from"./p-C9Ho60F2.js";import"./p-C8yN3uBj.js";import"./p-BS7OgSQe.js";import"./p-BYsgavgS.js";import"./p-BeukOaOq.js";import"./p-BB3MQDQq.js";import"./p-Cu1FEdFr.js";import"./p-Dj_zevuD.js";const u=class{constructor(r){t(this,r),this.errorEvent=s(this,"error-event"),this.errorMessage=null,this.columns=d,this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)}}componentWillLoad(){c(),this.analytics=new m(this),this.initializeGetPayments()}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetPayments()}initializeGetPayments(){this.accountId&&this.authToken?this.getPayments=(({id:t,authToken:s,service:r})=>async({params:i,onSuccess:e,onError:c,final:m})=>{var h,d;try{const m=await r.fetchPayments(t,s,i);if(m.error)return c({error:n(m.error),code:a(null===(d=m.error)||void 0===d?void 0:d.code),severity:o.ERROR});{const t=Object.assign({},m.page_info);e({payments:(null===(h=m.data)||void 0===h?void 0:h.map((t=>new p(t))))||[],pagingInfo:t})}}catch(t){const s=a(null==t?void 0:t.code);return c({error:t.message||t,code:s,severity:o.ERROR})}finally{return m()}})({id:this.accountId,authToken:this.authToken,service:new i}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:e.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}render(){return r(h,{key:"1e1f5cc087e917c65e7dbabaf21b355dd3261206"},r("payments-list-core",{key:"318b81a8eaacb70cc333efb9159279bc9310dd32",getPayments:this.getPayments,"onError-event":this.handleErrorEvent,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{u as justifi_payments_list}
@@ -1 +1 @@
1
- import{r as e,c as t,h as s}from"./p-DwYM91AU.js";import{f as i}from"./p-BS7OgSQe.js";import{D as a,am as r}from"./p-Dj_zevuD.js";import{B as d}from"./p-DkOvNRJs.js";import{S as c}from"./p-BP2sTIQV.js";import{S as o}from"./p-VhOlg78I.js";import"./p-CZfYo5-1.js";import{C as n,a as h}from"./p-Cjcsf8ku.js";import{g as p,a as f}from"./p-D2muobcE.js";import{D as l}from"./p-CxPieTnF.js";import{D as u}from"./p-Bg2SZArf.js";import{c as b,J as y}from"./p-pV1ZX4A8.js";import"./p-HXpYMWUU.js";import"./p-C8yN3uBj.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-CPKSE7M4.js";import"./p-BH0Xfn-F.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BjCdImSF.js";const v=({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.submitDisputeResponse(t,e,i);if(d.error){return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR})}a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}},m=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.submitEvent=t(this,"submit-event")}acceptDispute(){v({disputeId:this.dispute.id,authToken:this.authToken,service:new l})({payload:{forfeit:!0},onSuccess:e=>{this.submitEvent.emit({response:e})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}})}initiateRespondToDispute(){this.clickEvent.emit({name:u.respondToDispute})}isDueDatePassed(){var e;if(!(null===(e=this.dispute)||void 0===e?void 0:e.due_date))return!1;const t=new Date(this.dispute.due_date.replace(/-/g,"/").replace(/T.+/,"")),s=new Date;return s.setHours(0,0,0,0),t.setHours(0,0,0,0),t<s}render(){var e,t,n,h,p,f,l,u,b;return s(c,{key:"a494374453528ee6033589ed69dd2a0738ff8aaa"},this.isLoading&&s("div",{key:"436d266650297674d89f1ba2d299bf3ebdf16506",style:{marginBottom:"8px"}},s(o,{key:"952e9df74b83809b3a52d629ed05bc54b02754a5",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(o,{key:"f3dd82b6b941500202404ec1353c2f951f79b642",height:"18px",styles:{marginBottom:"8px"}}),s(o,{key:"608229cd12404e5e6f7014f955c24f9ff856a14f",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&this.isDueDatePassed()&&s("div",{key:"6d18b253eaa245b9f7b817c3baf473d6f6a31845",part:a},s("h1",{key:"7f7e30f8c7a9753970980796790b621a6d373548",class:"h4",part:r},"The due date (",null===(t=this.dispute)||void 0===t?void 0:t.due_date,") for this dispute has passed"),s("p",{key:"1c458aecef8ce286b6c2a46e286c57e1276aff04"},"You can no longer submit evidence to counter this dispute.")),(null===(n=this.dispute)||void 0===n?void 0:n.needsResponse)&&!this.isDueDatePassed()&&s("div",{key:"b3e85abf813bd36da6c952c9ad7c9357504bbc1d",part:a},s("h1",{key:"afcbe8f967170bc4abea0c71749a10e1c09937e0",class:"h4",part:r},"This payment is disputed"),s("p",{key:"30194ebea5f1763286f1a69f8fb2cd8c2c9d2d90"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"991505b018e4ee61b05c9872244163b729ee0cd1",class:"h5"},"Dispute details"),s("div",{key:"b94e62444ce05ac0ef6698a4b67f70088c10a9b4",class:"d-table gap-2"},s("div",{key:"8873c8b0cab9bf5e56add69007e9b281c64dcbf3",class:"d-table-row gap-2"},s("span",{key:"0c9cf9564277ba952c1b36acc7fa8660ec969266",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"0461b3c75b74e03b60dae12d80526b119d1e74d5",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(h=this.dispute)||void 0===h?void 0:h.amount))),s("div",{key:"074f92623a156b5c431719a8c11870c95377dfc1",class:"d-table-row gap-2"},s("span",{key:"04e1498ecb4d64f122c27ef0a83c38d843c72cad",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"fc3c56b35d899c06130b918cf03202cc9f44fa46",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(p=this.dispute)||void 0===p?void 0:p.reason)),s("div",{key:"13eca44a73967f235a18e2f8818a008f14a96ba2",class:"d-table-row gap-2"},s("span",{key:"954a86a2f0b77801a7c69c751a2b398f33bb2fe1",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Due Date"),s("span",{key:"21e305a5cdc269f45439671639e3984e68cb75e0",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(f=this.dispute)||void 0===f?void 0:f.due_date))),s("div",{key:"cad8b592ab80d24b3d4ce187eb534a336bd36581",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"077df79dae040c41489d1206fffde036aef51954",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"eb26cd7bc9d93c83eefc927c565f321eb3c2bef1",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(l=this.dispute)||void 0===l?void 0:l.underReview)&&s("div",{key:"f74d8e95a2ae74e1b59ac414d0a0d5cc43dd0291"},s("h1",{key:"2404542678c5ad29dd4e3af13edebbace06734d6",class:"h4"},"This payment is disputed and under review"),s("p",{key:"0027bd32af1b0ab4ffdd42fcc0b21cb7ab55835a"},"The cardholder is disputing this payment. A counter dispute has been submitted and is under review.")),(null===(u=this.dispute)||void 0===u?void 0:u.won)&&s("div",{key:"ff335c7dbe7bda7637d1b27a65150785e81361bc"},s("h1",{key:"36ee4c439d8e1346c115ba6f28e59008ce68d4e1",class:"h4"},"This payment was disputed"),s("p",{key:"5e6e6869d956f6ea84e64378e4bfaebeb71109b0"},"The cardholder disputed this payment and the card issuer has settled it in your favor.")),(null===(b=this.dispute)||void 0===b?void 0:b.lost)&&s("div",{key:"d67894655a47ac5327540c55fdd97db472d34f9d"},s("h1",{key:"dec3b5da213071a75183eab6e1521c5c986d3876",class:"h4"},"This payment was disputed"),s("p",{key:"806eb5f32bddde1c298eba9517c637a7fb69f598"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},k=class{constructor(s){e(this,s),this.errorEvent=t(this,"error-event"),this.errorMessage=null,this.apiOrigin="https://wc-proxy.justifi.ai",this.handleErrorEvent=e=>{this.errorMessage=e.detail.message,this.errorEvent.emit(e.detail)}}componentWillLoad(){b(),this.analytics=new y(this),this.initializeDisputeServiceMethods()}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}propChanged(){this.initializeDisputeServiceMethods()}initializeDisputeServiceMethods(){this.disputeId&&this.authToken?(this.updateDisputeResponse=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.updateDisputeResponse(t,e,i);if(d.error)return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.createDisputeEvidence=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.createDisputeEvidence(t,e,i);if(d.error)return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.submitDisputeResponse=v({disputeId:this.disputeId,authToken:this.authToken,service:new l})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:h.MISSING_PROPS,message:this.errorMessage,severity:n.ERROR}))}render(){return s(c,{key:"ed6376969ab6a686999b8a31376b3c1cc8c7b566"},s("justifi-dispute-response-core",{key:"d823732d71613e9e98305d4b7d3c22af0344d209","onError-event":this.handleErrorEvent,"dispute-id":this.disputeId,disputeResponse:this.disputeResponse,createDisputeEvidence:this.createDisputeEvidence,updateDisputeResponse:this.updateDisputeResponse,submitDisputeResponse:this.submitDisputeResponse}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}},j=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.stepCompleteEvent=t(this,"complete-form-step-event"),this.submitEvent=t(this,"submit-event"),this.disputeResponse={},this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.componentStepMapping=[()=>s("justifi-product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-additional-statement",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors})],this.saveData=async(e,t)=>{if(Object.keys(e).length)return this.isLastStep?this.submitDisputeResponse({payload:e,onSuccess:e=>{this.submitEvent.emit({response:e}),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}}):this.updateDisputeResponse({payload:e,onSuccess:e=>{this.disputeResponse=Object.assign({},e.data),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}});this.stepCompleteEvent.emit({response:null,formStep:t})},this.initializeMakePresignedURLs=async()=>{const e=this.documentList.map((e=>this.getPresignedFileUrl(e)));return await Promise.all(e)},this.initializeFileUploads=async()=>{const e=this.documentList.map((e=>this.uploadDocument(e)));return Promise.all(e)},this.getPresignedFileUrl=async e=>this.createDisputeEvidence({payload:{file_name:e.file_name,file_type:e.file_type,dispute_evidence_type:e.dispute_evidence_type},onSuccess:t=>{e.presignedUrl=t.data.presigned_url},onError:({error:t,code:s,severity:i})=>{const a={[e.dispute_evidence_type]:t};this.documentErrors=Object.assign(Object.assign({},this.documentErrors),a),this.errorEvent.emit({errorCode:s,message:t,severity:i})}}),this.uploadDocument=async e=>{const t=await e.getFileString();if(!e.presignedUrl)throw new Error("Presigned URL is not set");return await fetch(e.presignedUrl,{method:"PUT",body:t})},this.handleSubmit=async(e,t,s)=>{if(this.isLoading=!0,t.length){if(this.documentErrors={},this.documentList=t,await this.initializeMakePresignedURLs(),Object.keys(this.documentErrors).length)throw this.isLoading=!1,new Error("Could not presign all documents");await this.initializeFileUploads()}await this.saveData(e,s),this.isLoading=!1},this.onCancel=()=>{this.clickEvent.emit({name:u.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))}}get currentStepComponent(){return this.componentStepMapping[this.currentStep]()}get isLastStep(){return this.currentStep===this.componentStepMapping.length-1}get isFirstStep(){return 0===this.currentStep}render(){return s("div",{key:"b23c5bc27b1f657b9211d3a3482ae5b99982754e",class:"row gy-3"},s("div",{key:"a630f3c475d6b8026a81724c76340dc4f6088b26",class:"col-12"},s("h1",{key:"f4e848277ee8f1ec05ef1b1dfbac0e8872d9d91f",class:"h4",part:r},"Counter dispute")),s("div",{key:"6f7f21778853a3c1ac173ac79713f5427a226a5b",class:"col-12"},this.currentStepComponent),s("div",{key:"7354846a446f5677a12a3113b3f4226060a8b86a",class:"col-12"},s("div",{key:"4fb9dbccff8b004913656c3a130b46a0216dd6bb",class:"d-flex gap-2 mt-4 justify-content-end"},this.isFirstStep?s(d,{variant:"secondary",onClick:()=>this.onCancel(),disabled:this.isLoading,isLoading:this.isLoading},"Cancel"):s(d,{variant:"secondary",onClick:()=>this.onBack(),disabled:this.isLoading,isLoading:this.isLoading},"Back"),this.isLastStep?s(d,{variant:"primary",onClick:()=>this.onSubmit(),disabled:this.isLoading,isLoading:this.isLoading},"Submit Counter Dispute"):s(d,{variant:"primary",onClick:()=>this.onNext(),disabled:this.isLoading,isLoading:this.isLoading},"Next"))))}};export{m as justifi_dispute_notification,k as justifi_dispute_response,j as justifi_dispute_response_core}
1
+ import{r as e,c as t,h as s}from"./p-DwYM91AU.js";import{f as i}from"./p-BS7OgSQe.js";import{D as a,am as r}from"./p-Dj_zevuD.js";import{B as d}from"./p-DkOvNRJs.js";import{S as c}from"./p-BP2sTIQV.js";import{S as o}from"./p-VhOlg78I.js";import"./p-CZfYo5-1.js";import{C as n,a as h}from"./p-Cjcsf8ku.js";import{g as p,a as f}from"./p-D2muobcE.js";import{D as u}from"./p-CxPieTnF.js";import{D as l}from"./p-Bg2SZArf.js";import{c as b,J as y}from"./p-CeO5d98O.js";import"./p-HXpYMWUU.js";import"./p-C8yN3uBj.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-CPKSE7M4.js";import"./p-BH0Xfn-F.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BeukOaOq.js";const v=({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.submitDisputeResponse(t,e,i);if(d.error){return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR})}a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}},m=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.submitEvent=t(this,"submit-event")}acceptDispute(){v({disputeId:this.dispute.id,authToken:this.authToken,service:new u})({payload:{forfeit:!0},onSuccess:e=>{this.submitEvent.emit({response:e})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}})}initiateRespondToDispute(){this.clickEvent.emit({name:l.respondToDispute})}isDueDatePassed(){var e;if(!(null===(e=this.dispute)||void 0===e?void 0:e.due_date))return!1;const t=new Date(this.dispute.due_date.replace(/-/g,"/").replace(/T.+/,"")),s=new Date;return s.setHours(0,0,0,0),t.setHours(0,0,0,0),t<s}render(){var e,t,n,h,p,f,u,l,b;return s(c,{key:"a494374453528ee6033589ed69dd2a0738ff8aaa"},this.isLoading&&s("div",{key:"436d266650297674d89f1ba2d299bf3ebdf16506",style:{marginBottom:"8px"}},s(o,{key:"952e9df74b83809b3a52d629ed05bc54b02754a5",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(o,{key:"f3dd82b6b941500202404ec1353c2f951f79b642",height:"18px",styles:{marginBottom:"8px"}}),s(o,{key:"608229cd12404e5e6f7014f955c24f9ff856a14f",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&this.isDueDatePassed()&&s("div",{key:"6d18b253eaa245b9f7b817c3baf473d6f6a31845",part:a},s("h1",{key:"7f7e30f8c7a9753970980796790b621a6d373548",class:"h4",part:r},"The due date (",null===(t=this.dispute)||void 0===t?void 0:t.due_date,") for this dispute has passed"),s("p",{key:"1c458aecef8ce286b6c2a46e286c57e1276aff04"},"You can no longer submit evidence to counter this dispute.")),(null===(n=this.dispute)||void 0===n?void 0:n.needsResponse)&&!this.isDueDatePassed()&&s("div",{key:"b3e85abf813bd36da6c952c9ad7c9357504bbc1d",part:a},s("h1",{key:"afcbe8f967170bc4abea0c71749a10e1c09937e0",class:"h4",part:r},"This payment is disputed"),s("p",{key:"30194ebea5f1763286f1a69f8fb2cd8c2c9d2d90"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"991505b018e4ee61b05c9872244163b729ee0cd1",class:"h5"},"Dispute details"),s("div",{key:"b94e62444ce05ac0ef6698a4b67f70088c10a9b4",class:"d-table gap-2"},s("div",{key:"8873c8b0cab9bf5e56add69007e9b281c64dcbf3",class:"d-table-row gap-2"},s("span",{key:"0c9cf9564277ba952c1b36acc7fa8660ec969266",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"0461b3c75b74e03b60dae12d80526b119d1e74d5",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(h=this.dispute)||void 0===h?void 0:h.amount))),s("div",{key:"074f92623a156b5c431719a8c11870c95377dfc1",class:"d-table-row gap-2"},s("span",{key:"04e1498ecb4d64f122c27ef0a83c38d843c72cad",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"fc3c56b35d899c06130b918cf03202cc9f44fa46",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(p=this.dispute)||void 0===p?void 0:p.reason)),s("div",{key:"13eca44a73967f235a18e2f8818a008f14a96ba2",class:"d-table-row gap-2"},s("span",{key:"954a86a2f0b77801a7c69c751a2b398f33bb2fe1",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Due Date"),s("span",{key:"21e305a5cdc269f45439671639e3984e68cb75e0",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(f=this.dispute)||void 0===f?void 0:f.due_date))),s("div",{key:"cad8b592ab80d24b3d4ce187eb534a336bd36581",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"077df79dae040c41489d1206fffde036aef51954",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"eb26cd7bc9d93c83eefc927c565f321eb3c2bef1",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(u=this.dispute)||void 0===u?void 0:u.underReview)&&s("div",{key:"f74d8e95a2ae74e1b59ac414d0a0d5cc43dd0291"},s("h1",{key:"2404542678c5ad29dd4e3af13edebbace06734d6",class:"h4"},"This payment is disputed and under review"),s("p",{key:"0027bd32af1b0ab4ffdd42fcc0b21cb7ab55835a"},"The cardholder is disputing this payment. A counter dispute has been submitted and is under review.")),(null===(l=this.dispute)||void 0===l?void 0:l.won)&&s("div",{key:"ff335c7dbe7bda7637d1b27a65150785e81361bc"},s("h1",{key:"36ee4c439d8e1346c115ba6f28e59008ce68d4e1",class:"h4"},"This payment was disputed"),s("p",{key:"5e6e6869d956f6ea84e64378e4bfaebeb71109b0"},"The cardholder disputed this payment and the card issuer has settled it in your favor.")),(null===(b=this.dispute)||void 0===b?void 0:b.lost)&&s("div",{key:"d67894655a47ac5327540c55fdd97db472d34f9d"},s("h1",{key:"dec3b5da213071a75183eab6e1521c5c986d3876",class:"h4"},"This payment was disputed"),s("p",{key:"806eb5f32bddde1c298eba9517c637a7fb69f598"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},k=class{constructor(s){e(this,s),this.errorEvent=t(this,"error-event"),this.errorMessage=null,this.apiOrigin="https://wc-proxy.justifi.ai",this.handleErrorEvent=e=>{this.errorMessage=e.detail.message,this.errorEvent.emit(e.detail)}}componentWillLoad(){b(),this.analytics=new y(this),this.initializeDisputeServiceMethods()}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}propChanged(){this.initializeDisputeServiceMethods()}initializeDisputeServiceMethods(){this.disputeId&&this.authToken?(this.updateDisputeResponse=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.updateDisputeResponse(t,e,i);if(d.error)return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new u}),this.createDisputeEvidence=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=()=>{}})=>{var c;try{const d=await s.createDisputeEvidence(t,e,i);if(d.error)return r({error:f(d.error),code:p(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=p(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new u}),this.submitDisputeResponse=v({disputeId:this.disputeId,authToken:this.authToken,service:new u})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:h.MISSING_PROPS,message:this.errorMessage,severity:n.ERROR}))}render(){return s(c,{key:"ed6376969ab6a686999b8a31376b3c1cc8c7b566"},s("justifi-dispute-response-core",{key:"d823732d71613e9e98305d4b7d3c22af0344d209","onError-event":this.handleErrorEvent,"dispute-id":this.disputeId,disputeResponse:this.disputeResponse,createDisputeEvidence:this.createDisputeEvidence,updateDisputeResponse:this.updateDisputeResponse,submitDisputeResponse:this.submitDisputeResponse}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}},j=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event"),this.errorEvent=t(this,"error-event"),this.stepCompleteEvent=t(this,"complete-form-step-event"),this.submitEvent=t(this,"submit-event"),this.disputeResponse={},this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.componentStepMapping=[()=>s("justifi-product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-additional-statement",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors})],this.saveData=async(e,t)=>{if(Object.keys(e).length)return this.isLastStep?this.submitDisputeResponse({payload:e,onSuccess:e=>{this.submitEvent.emit({response:e}),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}}):this.updateDisputeResponse({payload:e,onSuccess:e=>{this.disputeResponse=Object.assign({},e.data),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}});this.stepCompleteEvent.emit({response:null,formStep:t})},this.initializeMakePresignedURLs=async()=>{const e=this.documentList.map((e=>this.getPresignedFileUrl(e)));return await Promise.all(e)},this.initializeFileUploads=async()=>{const e=this.documentList.map((e=>this.uploadDocument(e)));return Promise.all(e)},this.getPresignedFileUrl=async e=>this.createDisputeEvidence({payload:{file_name:e.file_name,file_type:e.file_type,dispute_evidence_type:e.dispute_evidence_type},onSuccess:t=>{e.presignedUrl=t.data.presigned_url},onError:({error:t,code:s,severity:i})=>{const a={[e.dispute_evidence_type]:t};this.documentErrors=Object.assign(Object.assign({},this.documentErrors),a),this.errorEvent.emit({errorCode:s,message:t,severity:i})}}),this.uploadDocument=async e=>{const t=await e.getFileString();if(!e.presignedUrl)throw new Error("Presigned URL is not set");return await fetch(e.presignedUrl,{method:"PUT",body:t})},this.handleSubmit=async(e,t,s)=>{if(this.isLoading=!0,t.length){if(this.documentErrors={},this.documentList=t,await this.initializeMakePresignedURLs(),Object.keys(this.documentErrors).length)throw this.isLoading=!1,new Error("Could not presign all documents");await this.initializeFileUploads()}await this.saveData(e,s),this.isLoading=!1},this.onCancel=()=>{this.clickEvent.emit({name:l.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:l.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:l.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:l.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))}}get currentStepComponent(){return this.componentStepMapping[this.currentStep]()}get isLastStep(){return this.currentStep===this.componentStepMapping.length-1}get isFirstStep(){return 0===this.currentStep}render(){return s("div",{key:"b23c5bc27b1f657b9211d3a3482ae5b99982754e",class:"row gy-3"},s("div",{key:"a630f3c475d6b8026a81724c76340dc4f6088b26",class:"col-12"},s("h1",{key:"f4e848277ee8f1ec05ef1b1dfbac0e8872d9d91f",class:"h4",part:r},"Counter dispute")),s("div",{key:"6f7f21778853a3c1ac173ac79713f5427a226a5b",class:"col-12"},this.currentStepComponent),s("div",{key:"7354846a446f5677a12a3113b3f4226060a8b86a",class:"col-12"},s("div",{key:"4fb9dbccff8b004913656c3a130b46a0216dd6bb",class:"d-flex gap-2 mt-4 justify-content-end"},this.isFirstStep?s(d,{variant:"secondary",onClick:()=>this.onCancel(),disabled:this.isLoading,isLoading:this.isLoading},"Cancel"):s(d,{variant:"secondary",onClick:()=>this.onBack(),disabled:this.isLoading,isLoading:this.isLoading},"Back"),this.isLastStep?s(d,{variant:"primary",onClick:()=>this.onSubmit(),disabled:this.isLoading,isLoading:this.isLoading},"Submit Counter Dispute"):s(d,{variant:"primary",onClick:()=>this.onNext(),disabled:this.isLoading,isLoading:this.isLoading},"Next"))))}};export{m as justifi_dispute_notification,k as justifi_dispute_response,j as justifi_dispute_response_core}
@@ -1 +1 @@
1
- import{h as s,r as t,c as i}from"./p-DwYM91AU.js";import{A as e}from"./p-C8yN3uBj.js";import{C as r,a as o}from"./p-Cjcsf8ku.js";import"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as a,a as n}from"./p-D2muobcE.js";import{c,J as l}from"./p-pV1ZX4A8.js";import{c as h}from"./p-CbBTgsKC.js";import{p as d,f as p,r as u,j as v}from"./p-BS7OgSQe.js";import{v as m,i as y,a as f,H as j}from"./p-DwLZbA7D.js";import{D as g,E as _}from"./p-Dj_zevuD.js";import{S as C}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{S as b}from"./p-VhOlg78I.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-BjCdImSF.js";import"./p-DCIW8z1f.js";import"./p-HXpYMWUU.js";const w=e();class k{async fetchQuote(s,t){return w.post({endpoint:"insurance/quotes",body:t,authToken:s})}async toggleCoverage(s,t,i){return w.post({endpoint:`insurance/quotes/${t}/toggle`,body:i,authToken:s})}}const T=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(b,{width:"35%",height:"30px"})),s("div",{class:"col-12"},s(b,{width:"70%"})),s("div",{class:"col-12"},s(b,{width:"40%"})),s("div",{class:"col-12"},s(b,{width:"40%"})),s("div",{class:"col-12"},s(b,{width:"100%"})),s("div",{class:"col-12"},s(b,{width:"80%"}))),S=class{constructor(s){t(this,s),this.insuranceUpdated=i(this,"insurance-updated"),this.errorEvent=i(this,"error-event"),this.isLoading=!0}async validate(){return m()}processHTMLContent(s){return d(s,[s=>u(s,"style"),s=>v(s,"a","part",g),s=>v(s,"p","part",g)])}componentWillLoad(){c(),this.analytics=new l(this),this.initializeServiceMethods(),this.getQuote&&this.fetchData()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeServiceMethods(){const s=this.authToken||h.authToken;if(!s)return void this.errorEvent.emit({errorCode:o.MISSING_PROPS,message:"Missing authToken",severity:r.ERROR});const t={authToken:s,service:new k};this.getQuote=(({authToken:s,service:t})=>async({payload:i,onSuccess:e,onError:o})=>{var c;try{const l=await t.fetchQuote(s,i);if(l.error)return o({error:n(l.error),code:a(null===(c=l.error)||void 0===c?void 0:c.code),severity:r.ERROR});e({quote:l.data})}catch(s){const t=a(null==s?void 0:s.code);return o({error:s.message||s,code:t,severity:r.ERROR})}})(t),this.toggleCoverage=(({authToken:s,service:t})=>async({quoteId:i,payload:e,onSuccess:o,onError:c})=>{var l;try{const h=await t.toggleCoverage(s,i,e);if(h.error)return c({error:n(h.error),code:a(null===(l=h.error)||void 0===l?void 0:l.code),severity:r.ERROR});o({quote:h.data})}catch(s){const t=a(null==s?void 0:s.code);return c({error:s.message||s,code:t,severity:r.ERROR})}})(t)}fetchData(){this.isLoading=!0,this.getQuote({payload:{checkout_id:this.checkoutId||h.checkoutId,policy_type:"season_interruption",primary_identity:{state:this.primaryIdentityState,email:this.primaryIdentityEmailAddress,first_name:this.primaryIdentityFirstName,last_name:this.primaryIdentityLastName,postal_code:this.primaryIdentityPostalCode,country:this.primaryIdentityCountry},policy_attributes:{insurable_amount:this.policyAttributesInsurableAmount,start_date:this.policyAttributesStartDate,end_date:this.policyAttributesEndDate,covered_identity:{first_name:this.coveredIdentityFirstName,last_name:this.coveredIdentityLastName}}},onSuccess:({quote:s})=>{this.quote=s,this.quote.product.description=this.processHTMLContent(this.quote.product.description),this.quote.product.legal_disclaimer=this.processHTMLContent(this.quote.product.legal_disclaimer),y[s.policy_type]=s.accepted,this.isLoading=!1},onError:({error:s,code:t,severity:i})=>{this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}onChangeHandler(s,t){this.accepted=t,f[this.quote.policy_type]=!1,this.toggleCoverage({quoteId:this.quote.id,payload:{accepted:this.accepted},onSuccess:()=>{this.insuranceUpdated.emit(),y[this.quote.policy_type]=this.accepted},onError:({error:s,code:t,severity:i})=>{this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}get error(){var s;return f[null===(s=this.quote)||void 0===s?void 0:s.policy_type]}render(){var t,i,e,r;return h&&!1===h.insuranceEnabled?(console.warn("[justifi-season-interruption-insurance] Insurance is disabled for this checkout (payment_settings.insurance_payments=false)."),null):s(C,null,this.isLoading?s(T,null):s("div",null,s(j,{text:null===(t=this.quote)||void 0===t?void 0:t.product.title,class:"fs-5 fw-bold pb-3"}),s("small",{part:g,innerHTML:null===(i=this.quote)||void 0===i?void 0:i.product.description}),s("form-control-radio",{label:`Accept coverage for ${p(null===(e=this.quote)||void 0===e?void 0:e.total_cents)}`,name:"opt-in",value:"true",checked:"true"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("form-control-radio",{label:"Decline coverage",name:"opt-in",value:"false",checked:"false"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("div",{class:"invalid-feedback",style:{display:this.error?"block":"none"},part:_},"Please select an option"),s("small",{part:g,innerHTML:null===(r=this.quote)||void 0===r?void 0:r.product.legal_disclaimer})))}};export{S as justifi_season_interruption_insurance}
1
+ import{h as s,r as t,c as i}from"./p-DwYM91AU.js";import{A as e}from"./p-C8yN3uBj.js";import{C as r,a as o}from"./p-Cjcsf8ku.js";import"./p-CPKSE7M4.js";import"./p-CLHwhyvu.js";import"./p-B5rtFhtR.js";import"./p-BH0Xfn-F.js";import{g as a,a as n}from"./p-D2muobcE.js";import{c,J as l}from"./p-CeO5d98O.js";import{c as h}from"./p-DU8dqq9U.js";import{p as d,f as p,r as u,j as v}from"./p-BS7OgSQe.js";import{v as m,i as y,a as f,H as j}from"./p-DwLZbA7D.js";import{D as g,E as _}from"./p-Dj_zevuD.js";import{S as k}from"./p-BP2sTIQV.js";import"./p-CZfYo5-1.js";import{S as w}from"./p-VhOlg78I.js";import"./p-tGDdRx0W.js";import"./p-BYsgavgS.js";import"./p-BeukOaOq.js";import"./p-DCIW8z1f.js";import"./p-HXpYMWUU.js";const C=e();class b{async fetchQuote(s,t){return C.post({endpoint:"insurance/quotes",body:t,authToken:s})}async toggleCoverage(s,t,i){return C.post({endpoint:`insurance/quotes/${t}/toggle`,body:i,authToken:s})}}const D=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(w,{width:"35%",height:"30px"})),s("div",{class:"col-12"},s(w,{width:"70%"})),s("div",{class:"col-12"},s(w,{width:"40%"})),s("div",{class:"col-12"},s(w,{width:"40%"})),s("div",{class:"col-12"},s(w,{width:"100%"})),s("div",{class:"col-12"},s(w,{width:"80%"}))),T=class{constructor(s){t(this,s),this.insuranceUpdated=i(this,"insurance-updated"),this.errorEvent=i(this,"error-event"),this.isLoading=!0}async validate(){return m()}processHTMLContent(s){return d(s,[s=>u(s,"style"),s=>v(s,"a","part",g),s=>v(s,"p","part",g)])}componentWillLoad(){c(),this.analytics=new l(this),this.initializeServiceMethods(),this.getQuote&&this.fetchData()}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeServiceMethods(){const s=this.authToken||h.authToken;if(!s)return void this.errorEvent.emit({errorCode:o.MISSING_PROPS,message:"Missing authToken",severity:r.ERROR});const t={authToken:s,service:new b};this.getQuote=(({authToken:s,service:t})=>async({payload:i,onSuccess:e,onError:o})=>{var c;try{const l=await t.fetchQuote(s,i);if(l.error)return o({error:n(l.error),code:a(null===(c=l.error)||void 0===c?void 0:c.code),severity:r.ERROR});e({quote:l.data})}catch(s){const t=a(null==s?void 0:s.code);return o({error:s.message||s,code:t,severity:r.ERROR})}})(t),this.toggleCoverage=(({authToken:s,service:t})=>async({quoteId:i,payload:e,onSuccess:o,onError:c})=>{var l;try{const h=await t.toggleCoverage(s,i,e);if(h.error)return c({error:n(h.error),code:a(null===(l=h.error)||void 0===l?void 0:l.code),severity:r.ERROR});o({quote:h.data})}catch(s){const t=a(null==s?void 0:s.code);return c({error:s.message||s,code:t,severity:r.ERROR})}})(t)}fetchData(){this.isLoading=!0,this.getQuote({payload:{checkout_id:this.checkoutId||h.checkoutId,policy_type:"season_interruption",primary_identity:{state:this.primaryIdentityState,email:this.primaryIdentityEmailAddress,first_name:this.primaryIdentityFirstName,last_name:this.primaryIdentityLastName,postal_code:this.primaryIdentityPostalCode,country:this.primaryIdentityCountry},policy_attributes:{insurable_amount:this.policyAttributesInsurableAmount,start_date:this.policyAttributesStartDate,end_date:this.policyAttributesEndDate,covered_identity:{first_name:this.coveredIdentityFirstName,last_name:this.coveredIdentityLastName}}},onSuccess:({quote:s})=>{this.quote=s,this.quote.product.description=this.processHTMLContent(this.quote.product.description),this.quote.product.legal_disclaimer=this.processHTMLContent(this.quote.product.legal_disclaimer),y[s.policy_type]=s.accepted,this.isLoading=!1},onError:({error:s,code:t,severity:i})=>{this.isLoading=!1,this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}onChangeHandler(s,t){this.accepted=t,f[this.quote.policy_type]=!1,this.toggleCoverage({quoteId:this.quote.id,payload:{accepted:this.accepted},onSuccess:()=>{this.insuranceUpdated.emit(),y[this.quote.policy_type]=this.accepted},onError:({error:s,code:t,severity:i})=>{this.errorEvent.emit({errorCode:t,message:s,severity:i})}})}get error(){var s;return f[null===(s=this.quote)||void 0===s?void 0:s.policy_type]}render(){var t,i,e,r;return h&&!1===h.insuranceEnabled?(console.warn("[justifi-season-interruption-insurance] Insurance is disabled for this checkout (payment_settings.insurance_payments=false)."),null):s(k,null,this.isLoading?s(D,null):s("div",null,s(j,{text:null===(t=this.quote)||void 0===t?void 0:t.product.title,class:"fs-5 fw-bold pb-3"}),s("small",{part:g,innerHTML:null===(i=this.quote)||void 0===i?void 0:i.product.description}),s("form-control-radio",{label:`Accept coverage for ${p(null===(e=this.quote)||void 0===e?void 0:e.total_cents)}`,name:"opt-in",value:"true",checked:"true"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("form-control-radio",{label:"Decline coverage",name:"opt-in",value:"false",checked:"false"===this.accepted,inputHandler:this.onChangeHandler.bind(this),errorText:this.error?" ":void 0}),s("div",{class:"invalid-feedback",style:{display:this.error?"block":"none"},part:_},"Please select an option"),s("small",{part:g,innerHTML:null===(r=this.quote)||void 0===r?void 0:r.product.legal_disclaimer})))}};export{T as justifi_season_interruption_insurance}