@justifi/webcomponents 6.13.7 → 6.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/dist/cjs/{Analytics-DnstliVw.js → Analytics-8X9v2COT.js} +2 -2
  2. package/dist/cjs/{Api-BO8Dq_Q9.js → Api-DdeSr34D.js} +3 -0
  3. package/dist/cjs/additional-questions-form-step_15.cjs.entry.js +4 -3
  4. package/dist/cjs/bank-account-form.cjs.entry.js +2 -2
  5. package/dist/cjs/{business.service-CPATYPjf.js → business.service-OqWV2MwK.js} +1 -1
  6. package/dist/cjs/card-form.cjs.entry.js +2 -2
  7. package/dist/cjs/{check-pkg-version-D9334YnB.js → check-pkg-version-CeW26qxO.js} +1 -1
  8. package/dist/cjs/{checkout.service-DUHQ2mz6.js → checkout.service-CKgEKcmm.js} +1 -1
  9. package/dist/cjs/dispute-notification_2.cjs.entry.js +5 -5
  10. package/dist/cjs/{event-types-fW6pQOxu.js → event-types-B8fM9Mqe.js} +1 -1
  11. package/dist/cjs/{get-subaccounts-BEqUiA8S.js → get-subaccounts-C1LbGVo_.js} +1 -1
  12. package/dist/cjs/hidden-input_2.cjs.entry.js +1 -1
  13. package/dist/cjs/justifi-apple-pay_11.cjs.entry.js +6 -6
  14. package/dist/cjs/justifi-bank-account-billing-form-simple.cjs.entry.js +4 -4
  15. package/dist/cjs/justifi-bank-account-form.cjs.entry.js +4 -4
  16. package/dist/cjs/justifi-business-details.cjs.entry.js +5 -5
  17. package/dist/cjs/justifi-business-form.cjs.entry.js +5 -5
  18. package/dist/cjs/justifi-card-form.cjs.entry.js +4 -4
  19. package/dist/cjs/justifi-checkout-qr-code.cjs.entry.js +4 -4
  20. package/dist/cjs/justifi-checkout.cjs.entry.js +4 -4
  21. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +6 -6
  22. package/dist/cjs/justifi-dispute-management.cjs.entry.js +5 -5
  23. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +4 -4
  24. package/dist/cjs/justifi-order-terminals.cjs.entry.js +6 -6
  25. package/dist/cjs/justifi-payment-details.cjs.entry.js +5 -5
  26. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +5 -5
  27. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +5 -5
  28. package/dist/cjs/justifi-payments-list.cjs.entry.js +5 -5
  29. package/dist/cjs/justifi-payout-details.cjs.entry.js +5 -5
  30. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +5 -5
  31. package/dist/cjs/justifi-payouts-list.cjs.entry.js +6 -6
  32. package/dist/cjs/justifi-qr-terminal.cjs.entry.js +5 -5
  33. package/dist/cjs/justifi-refund-payment.cjs.entry.js +5 -5
  34. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +4 -4
  35. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +4 -4
  36. package/dist/cjs/justifi-terminals-list.cjs.entry.js +6 -6
  37. package/dist/cjs/{package-CUVhHNoD.js → package-CorQZH2M.js} +1 -1
  38. package/dist/cjs/{payment.service-D7Rfb-HB.js → payment.service-B7x7eK6m.js} +1 -1
  39. package/dist/cjs/{payout.service-Dt-LIFvA.js → payout.service-gzGWoXeh.js} +1 -1
  40. package/dist/cjs/{plaid.service-D9rC_F9z.js → plaid.service-BphWvNSP.js} +1 -1
  41. package/dist/cjs/{terminal.service-DnmqW9Dl.js → terminal.service-BPrlu7uq.js} +1 -1
  42. package/dist/collection/api/Api.js +3 -0
  43. package/dist/docs.json +1 -1
  44. package/dist/esm/{Analytics-BlTw8DMC.js → Analytics-DY8rzGkY.js} +2 -2
  45. package/dist/esm/{Api-CwaiizF1.js → Api-C6pVpXue.js} +3 -0
  46. package/dist/esm/additional-questions-form-step_15.entry.js +4 -3
  47. package/dist/esm/bank-account-form.entry.js +2 -2
  48. package/dist/esm/{business.service-BJ3lvMNr.js → business.service-DVaWaxuN.js} +1 -1
  49. package/dist/esm/card-form.entry.js +2 -2
  50. package/dist/esm/{check-pkg-version-DTxsw7UI.js → check-pkg-version-BYwiz3xi.js} +1 -1
  51. package/dist/esm/{checkout.service-DMbW2pn3.js → checkout.service-DCg5TSgj.js} +1 -1
  52. package/dist/esm/dispute-notification_2.entry.js +5 -5
  53. package/dist/esm/{event-types-D37YHLaN.js → event-types-DV6dBcPL.js} +1 -1
  54. package/dist/esm/{get-subaccounts-RtGqjq7u.js → get-subaccounts-B1B7EBG1.js} +1 -1
  55. package/dist/esm/hidden-input_2.entry.js +1 -1
  56. package/dist/esm/justifi-apple-pay_11.entry.js +6 -6
  57. package/dist/esm/justifi-bank-account-billing-form-simple.entry.js +4 -4
  58. package/dist/esm/justifi-bank-account-form.entry.js +4 -4
  59. package/dist/esm/justifi-business-details.entry.js +5 -5
  60. package/dist/esm/justifi-business-form.entry.js +5 -5
  61. package/dist/esm/justifi-card-form.entry.js +4 -4
  62. package/dist/esm/justifi-checkout-qr-code.entry.js +4 -4
  63. package/dist/esm/justifi-checkout.entry.js +4 -4
  64. package/dist/esm/justifi-checkouts-list.entry.js +6 -6
  65. package/dist/esm/justifi-dispute-management.entry.js +5 -5
  66. package/dist/esm/justifi-gross-payment-chart.entry.js +4 -4
  67. package/dist/esm/justifi-order-terminals.entry.js +6 -6
  68. package/dist/esm/justifi-payment-details.entry.js +5 -5
  69. package/dist/esm/justifi-payment-provisioning.entry.js +5 -5
  70. package/dist/esm/justifi-payment-transactions-list.entry.js +5 -5
  71. package/dist/esm/justifi-payments-list.entry.js +5 -5
  72. package/dist/esm/justifi-payout-details.entry.js +5 -5
  73. package/dist/esm/justifi-payout-transactions-list.entry.js +5 -5
  74. package/dist/esm/justifi-payouts-list.entry.js +6 -6
  75. package/dist/esm/justifi-qr-terminal.entry.js +5 -5
  76. package/dist/esm/justifi-refund-payment.entry.js +5 -5
  77. package/dist/esm/justifi-season-interruption-insurance.entry.js +4 -4
  78. package/dist/esm/justifi-terminal-orders-list.entry.js +4 -4
  79. package/dist/esm/justifi-terminals-list.entry.js +6 -6
  80. package/dist/esm/{package-Dwe9A9Fk.js → package-DmrfgGzv.js} +1 -1
  81. package/dist/esm/{payment.service-CPnigqmB.js → payment.service-Dj3Jgj2F.js} +1 -1
  82. package/dist/esm/{payout.service-CYPLRYg5.js → payout.service-CdcAA0_l.js} +1 -1
  83. package/dist/esm/{plaid.service-CvfKh_3f.js → plaid.service-CwS4SIQb.js} +1 -1
  84. package/dist/esm/{terminal.service-r2jKgzEJ.js → terminal.service-DQz6FWpx.js} +1 -1
  85. package/dist/module/Api.js +3 -0
  86. package/dist/module/package.js +1 -1
  87. package/dist/webcomponents/{p-b89ae2e8.entry.js → p-154bbb18.entry.js} +1 -1
  88. package/dist/webcomponents/{p-fc1ba772.entry.js → p-1cd30181.entry.js} +1 -1
  89. package/dist/webcomponents/{p-0b394a01.entry.js → p-21fcf763.entry.js} +1 -1
  90. package/dist/webcomponents/{p-240b7c93.entry.js → p-24a39581.entry.js} +1 -1
  91. package/dist/webcomponents/{p-0b01e411.entry.js → p-2908f0e4.entry.js} +1 -1
  92. package/dist/webcomponents/{p-4f48afc8.entry.js → p-3e1d3af4.entry.js} +1 -1
  93. package/dist/webcomponents/{p-75f59ef5.entry.js → p-4781669c.entry.js} +1 -1
  94. package/dist/webcomponents/{p-d2bb9c6c.entry.js → p-4fd708ff.entry.js} +1 -1
  95. package/dist/webcomponents/p-5257de4d.entry.js +1 -0
  96. package/dist/webcomponents/{p-265501d4.entry.js → p-52f605a9.entry.js} +1 -1
  97. package/dist/webcomponents/p-5da3adf2.entry.js +1 -0
  98. package/dist/webcomponents/{p-a44c5178.entry.js → p-6a98c472.entry.js} +4 -4
  99. package/dist/webcomponents/{p-4e8cd7f2.entry.js → p-6c1e40e7.entry.js} +1 -1
  100. package/dist/webcomponents/{p-e254c3e3.entry.js → p-6d218257.entry.js} +1 -1
  101. package/dist/webcomponents/{p-515a7a8d.entry.js → p-7883f20e.entry.js} +1 -1
  102. package/dist/webcomponents/{p-146be0a4.entry.js → p-8b85daf8.entry.js} +1 -1
  103. package/dist/webcomponents/{p-b4219b06.entry.js → p-981dcbc9.entry.js} +1 -1
  104. package/dist/webcomponents/p-B9a-6Pn9.js +1 -0
  105. package/dist/webcomponents/{p-Bx1A5sQR.js → p-BJIJZgZH.js} +1 -1
  106. package/dist/webcomponents/{p-B5RnJXKG.js → p-CGTKc-Ra.js} +1 -1
  107. package/dist/webcomponents/{p-DNIKPf_U.js → p-C_YFlFQQ.js} +1 -1
  108. package/dist/webcomponents/{p-Cc6TzfDZ.js → p-CiIGpNnJ.js} +1 -1
  109. package/dist/webcomponents/p-ClGSzzda.js +1 -0
  110. package/dist/webcomponents/{p-HtdZEF57.js → p-CoY0w4be.js} +1 -1
  111. package/dist/webcomponents/{p-aBD3IP5P.js → p-DB4q0kxv.js} +1 -1
  112. package/dist/webcomponents/p-DmrfgGzv.js +1 -0
  113. package/dist/webcomponents/{p-CDKbfqXv.js → p-IADrgGjR.js} +1 -1
  114. package/dist/webcomponents/p-RmBpI2DR.js +1 -0
  115. package/dist/webcomponents/p-ab0449a9.entry.js +1 -0
  116. package/dist/webcomponents/p-ad72e7c0.entry.js +1 -0
  117. package/dist/webcomponents/{p-69fc3436.entry.js → p-ae223a12.entry.js} +1 -1
  118. package/dist/webcomponents/{p-7d469a3c.entry.js → p-bebfcbdf.entry.js} +1 -1
  119. package/dist/webcomponents/{p-403290aa.entry.js → p-c7b96d6f.entry.js} +1 -1
  120. package/dist/webcomponents/{p-863a7764.entry.js → p-cc8ad073.entry.js} +1 -1
  121. package/dist/webcomponents/{p-0e440060.entry.js → p-df21d9b7.entry.js} +1 -1
  122. package/dist/webcomponents/{p-0a1a87fc.entry.js → p-e659f030.entry.js} +1 -1
  123. package/dist/webcomponents/{p-37daa694.entry.js → p-eaf179a0.entry.js} +1 -1
  124. package/dist/webcomponents/p-ee3e88bc.entry.js +1 -0
  125. package/dist/webcomponents/{p-bbc21966.entry.js → p-ef3f9a80.entry.js} +1 -1
  126. package/dist/webcomponents/{p-97d05b62.entry.js → p-f7258258.entry.js} +1 -1
  127. package/dist/webcomponents/{p-DMGq2Rrg.js → p-n4OrTH9l.js} +1 -1
  128. package/dist/webcomponents/webcomponents.esm.js +1 -1
  129. package/package.json +1 -1
  130. package/dist/webcomponents/p-01b2a5f7.entry.js +0 -1
  131. package/dist/webcomponents/p-38b3078b.entry.js +0 -1
  132. package/dist/webcomponents/p-4d48d2dc.entry.js +0 -1
  133. package/dist/webcomponents/p-54fb057f.entry.js +0 -1
  134. package/dist/webcomponents/p-68d936ba.entry.js +0 -1
  135. package/dist/webcomponents/p-B2CETB_i.js +0 -1
  136. package/dist/webcomponents/p-CPEn7kso.js +0 -1
  137. package/dist/webcomponents/p-DM45Ihwj.js +0 -1
  138. package/dist/webcomponents/p-Dwe9A9Fk.js +0 -1
@@ -1 +1 @@
1
- import{r as e,c as t,h as i}from"./p-CV0Pyo1O.js";import{J as s}from"./p-B5RnJXKG.js";import{c as a}from"./p-HtdZEF57.js";import{c}from"./p-DyPk4BJt.js";import{c as d}from"./p-CPKMvyV_.js";import{S as o}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{P as b}from"./p-DkoufM1t.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const h=class{constructor(i){e(this,i),this.errorEvent=t(this,"error-event",7),this.loadedEvent=t(this,"loaded",7),this.submitEvent=t(this,"submit-event",7),this.availablePaymentMethods=[],this.errorMessage="",this.insuranceToggled=!1,this.disableBankAccount=!1,this.disableBnpl=!1,this.disableCreditCard=!1,this.disablePaymentMethodGroup=!1,this.hideBankAccountBillingForm=!1,this.hideCardBillingForm=!1}propChanged(){this.updateStore()}connectedCallback(){this.authToken&&this.checkoutId&&this.updateStore()}componentWillLoad(){a(),this.analytics=new s(this)}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}checkoutComplete(e){c.isSubmitting=!1}checkoutError(e){c.isSubmitting=!1}checkoutChanged(e){this.availablePaymentMethods=this.disableBnpl?e.detail.availablePaymentMethodTypes.filter((e=>e!==b.SEZZLE)):e.detail.availablePaymentMethodTypes}async fillBillingForm(e){c.billingFormFields=e}async validate(){var e;return{isValid:await(null===(e=this.modularCheckoutRef)||void 0===e?void 0:e.validate())}}updateStore(){c.checkoutId=this.checkoutId,c.authToken=this.authToken,c.disableCreditCard=this.disableCreditCard,c.disableBankAccount=this.disableBankAccount,c.disablePaymentMethodGroup=this.disablePaymentMethodGroup}async submit(e){var t;null===(t=this.modularCheckoutRef)||void 0===t||t.submitCheckout(c.billingFormFields)}get showPaymentTypeHeader(){return!this.disableCreditCard&&!this.disableBankAccount}render(){var e,t;return i(o,{key:"bc8428227b2fc0e0753c4ef4e2370cd34bd34e82"},i("justifi-modular-checkout",{key:"9fda18728d6fb5b20716070cefc2fcf8ef097459",ref:e=>{this.modularCheckoutRef=e},authToken:this.authToken,checkoutId:this.checkoutId,preCompleteHook:this.preCompleteHook},i("div",{key:"e39f9871696d44cea2080198c7b91d03b706f2fd",class:"row gy-3 jfi-checkout-core"},i("div",{key:"df6045e9394b10f9b3e4b86e1a2242db30cc9b7b",class:"col-12",part:d},i("justifi-header",{key:"8f4332bd43371106faf4e264fd5b27c97cb589aa",text:"Summary",level:"h2",class:"fs-5 fw-bold pb-3"}),i("section",{key:"a7170276f18b9fa4b085c4d5de35979d55935929"},i("justifi-checkout-summary",{key:"109aceb53ad2500e927230b3f82bbb07ab3f604c"}))),i("div",{key:"902e040bbd591408c9d292a592ca4d31fc838d85",class:"col-12 mt-4"},i("slot",{key:"2677cb4952d88a8ce8f0198b96ed2638d4f4e6eb",name:"insurance"})),i("div",{key:"32c033bba12a7b7bf26159bd1878d6fa4ed913d9",class:"col-12 mt-4"},i("justifi-header",{key:"74543b63c1b94a5200ad36236818fce7345d5d76",text:"Payment",level:"h2",class:"fs-5 fw-bold pb-3"}),this.showPaymentTypeHeader&&i("justifi-header",{key:"8e7c56c75bb779211b72c0b8561df8283b731ca1",text:"Select payment type",level:"h3",class:"fs-6 fw-bold lh-lg"}),i("div",{key:"c2b0a875169b46dcd7d73428e3f1a4825b380ce5",class:"d-flex flex-column"},i("section",{key:"c5f007674c058e88d271c17f0b6b9c959bd0e044"},i("div",{key:"2c4ecdd0f8708f9f80bae50362ba7fab295f788f"},this.availablePaymentMethods.includes(b.APPLE_PAY)&&i("div",{key:"5ac363a3b7c38cb3f10e9c2c7916825f0f5dc2d8",class:"mb-3"},i("justifi-apple-pay",{key:"498c03630e4057b54ebd12a3cd87b6b6bdb00c4b"})),this.availablePaymentMethods.includes(b.GOOGLE_PAY)&&i("div",{key:"8c8114d142927739a3217d3a0a44c34c89e58f83",class:"mb-3"},i("justifi-google-pay",Object.assign({key:"a2fbc5b99a83fbc52698422d2f57a3380f97733f",ref:e=>this.googlePayRef=e},null!=this.googlePayEnv?{environment:this.googlePayEnv}:{}))),i("justifi-saved-payment-methods",{key:"2e5b27eea7ef433e950feadae0b0a07f8b613533"}),this.availablePaymentMethods.includes(b.SEZZLE)&&i("justifi-radio-list-item",{key:"fb1501c51eaf836579547bc50c295ebb67cb09c1",name:"paymentMethodType",value:b.SEZZLE,checked:(null===(e=null==c?void 0:c.selectedPaymentMethod)||void 0===e?void 0:e.type)===b.SEZZLE,label:i("justifi-sezzle-payment-method",{ref:e=>this.sezzlePaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.sezzlePaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),this.availablePaymentMethods.includes(b.PLAID)&&!this.disableBnpl&&i("justifi-radio-list-item",{key:"49e0687b4955fb92935783250540fe38350bbdcc",name:"paymentMethodType",value:b.PLAID,checked:(null===(t=null==c?void 0:c.selectedPaymentMethod)||void 0===t?void 0:t.type)===b.PLAID,label:i("justifi-plaid-payment-method",{ref:e=>this.plaidPaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.plaidPaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),i("justifi-tokenize-payment-method",{key:"ba793274de073c8a60c063e9caedcf32780b4bbf",ref:e=>this.tokenizePaymentMethodRef=e,authToken:this.authToken,accountId:c.accountId,disableCreditCard:this.disableCreditCard,disableBankAccount:this.disableBankAccount,hideCardBillingForm:this.hideCardBillingForm,hideBankAccountBillingForm:this.hideBankAccountBillingForm,hideSubmitButton:!0,paymentMethodGroupId:c.paymentMethodGroupId}))))),i("div",{key:"ed7be422c4e369382fd42e0b0162357df7de2031",class:"mt-4"},i("justifi-button",{key:"849d648feec5ce805d6eb87acacf94d62e7a8f1b",text:"Pay",type:"submit",variant:"primary",clickHandler:e=>this.submit(e),disabled:c.isSubmitting||c.isWalletProcessing,isLoading:c.isSubmitting||c.isWalletProcessing,customStyle:{width:"100%",textAlign:"center"}})))))}static get watchers(){return{authToken:["propChanged"],checkoutId:["propChanged"],disableCreditCard:["propChanged"],disableBankAccount:["propChanged"],disablePaymentMethodGroup:["propChanged"]}}};export{h as justifi_checkout}
1
+ import{r as e,c as t,h as i}from"./p-CV0Pyo1O.js";import{J as a}from"./p-CGTKc-Ra.js";import{c as s}from"./p-CoY0w4be.js";import{c}from"./p-DyPk4BJt.js";import{c as d}from"./p-CPKMvyV_.js";import{S as o}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{P as b}from"./p-DkoufM1t.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const h=class{constructor(i){e(this,i),this.errorEvent=t(this,"error-event",7),this.loadedEvent=t(this,"loaded",7),this.submitEvent=t(this,"submit-event",7),this.availablePaymentMethods=[],this.errorMessage="",this.insuranceToggled=!1,this.disableBankAccount=!1,this.disableBnpl=!1,this.disableCreditCard=!1,this.disablePaymentMethodGroup=!1,this.hideBankAccountBillingForm=!1,this.hideCardBillingForm=!1}propChanged(){this.updateStore()}connectedCallback(){this.authToken&&this.checkoutId&&this.updateStore()}componentWillLoad(){s(),this.analytics=new a(this)}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}checkoutComplete(e){c.isSubmitting=!1}checkoutError(e){c.isSubmitting=!1}checkoutChanged(e){this.availablePaymentMethods=this.disableBnpl?e.detail.availablePaymentMethodTypes.filter((e=>e!==b.SEZZLE)):e.detail.availablePaymentMethodTypes}async fillBillingForm(e){c.billingFormFields=e}async validate(){var e;return{isValid:await(null===(e=this.modularCheckoutRef)||void 0===e?void 0:e.validate())}}updateStore(){c.checkoutId=this.checkoutId,c.authToken=this.authToken,c.disableCreditCard=this.disableCreditCard,c.disableBankAccount=this.disableBankAccount,c.disablePaymentMethodGroup=this.disablePaymentMethodGroup}async submit(e){var t;null===(t=this.modularCheckoutRef)||void 0===t||t.submitCheckout(c.billingFormFields)}get showPaymentTypeHeader(){return!this.disableCreditCard&&!this.disableBankAccount}render(){var e,t;return i(o,{key:"bc8428227b2fc0e0753c4ef4e2370cd34bd34e82"},i("justifi-modular-checkout",{key:"9fda18728d6fb5b20716070cefc2fcf8ef097459",ref:e=>{this.modularCheckoutRef=e},authToken:this.authToken,checkoutId:this.checkoutId,preCompleteHook:this.preCompleteHook},i("div",{key:"e39f9871696d44cea2080198c7b91d03b706f2fd",class:"row gy-3 jfi-checkout-core"},i("div",{key:"df6045e9394b10f9b3e4b86e1a2242db30cc9b7b",class:"col-12",part:d},i("justifi-header",{key:"8f4332bd43371106faf4e264fd5b27c97cb589aa",text:"Summary",level:"h2",class:"fs-5 fw-bold pb-3"}),i("section",{key:"a7170276f18b9fa4b085c4d5de35979d55935929"},i("justifi-checkout-summary",{key:"109aceb53ad2500e927230b3f82bbb07ab3f604c"}))),i("div",{key:"902e040bbd591408c9d292a592ca4d31fc838d85",class:"col-12 mt-4"},i("slot",{key:"2677cb4952d88a8ce8f0198b96ed2638d4f4e6eb",name:"insurance"})),i("div",{key:"32c033bba12a7b7bf26159bd1878d6fa4ed913d9",class:"col-12 mt-4"},i("justifi-header",{key:"74543b63c1b94a5200ad36236818fce7345d5d76",text:"Payment",level:"h2",class:"fs-5 fw-bold pb-3"}),this.showPaymentTypeHeader&&i("justifi-header",{key:"8e7c56c75bb779211b72c0b8561df8283b731ca1",text:"Select payment type",level:"h3",class:"fs-6 fw-bold lh-lg"}),i("div",{key:"c2b0a875169b46dcd7d73428e3f1a4825b380ce5",class:"d-flex flex-column"},i("section",{key:"c5f007674c058e88d271c17f0b6b9c959bd0e044"},i("div",{key:"2c4ecdd0f8708f9f80bae50362ba7fab295f788f"},this.availablePaymentMethods.includes(b.APPLE_PAY)&&i("div",{key:"5ac363a3b7c38cb3f10e9c2c7916825f0f5dc2d8",class:"mb-3"},i("justifi-apple-pay",{key:"498c03630e4057b54ebd12a3cd87b6b6bdb00c4b"})),this.availablePaymentMethods.includes(b.GOOGLE_PAY)&&i("div",{key:"8c8114d142927739a3217d3a0a44c34c89e58f83",class:"mb-3"},i("justifi-google-pay",Object.assign({key:"a2fbc5b99a83fbc52698422d2f57a3380f97733f",ref:e=>this.googlePayRef=e},null!=this.googlePayEnv?{environment:this.googlePayEnv}:{}))),i("justifi-saved-payment-methods",{key:"2e5b27eea7ef433e950feadae0b0a07f8b613533"}),this.availablePaymentMethods.includes(b.SEZZLE)&&i("justifi-radio-list-item",{key:"fb1501c51eaf836579547bc50c295ebb67cb09c1",name:"paymentMethodType",value:b.SEZZLE,checked:(null===(e=null==c?void 0:c.selectedPaymentMethod)||void 0===e?void 0:e.type)===b.SEZZLE,label:i("justifi-sezzle-payment-method",{ref:e=>this.sezzlePaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.sezzlePaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),this.availablePaymentMethods.includes(b.PLAID)&&!this.disableBnpl&&i("justifi-radio-list-item",{key:"49e0687b4955fb92935783250540fe38350bbdcc",name:"paymentMethodType",value:b.PLAID,checked:(null===(t=null==c?void 0:c.selectedPaymentMethod)||void 0===t?void 0:t.type)===b.PLAID,label:i("justifi-plaid-payment-method",{ref:e=>this.plaidPaymentMethodRef=e}),"onRadio-click":()=>{var e;null===(e=this.plaidPaymentMethodRef)||void 0===e||e.handleSelectionClick()}}),i("justifi-tokenize-payment-method",{key:"ba793274de073c8a60c063e9caedcf32780b4bbf",ref:e=>this.tokenizePaymentMethodRef=e,authToken:this.authToken,accountId:c.accountId,disableCreditCard:this.disableCreditCard,disableBankAccount:this.disableBankAccount,hideCardBillingForm:this.hideCardBillingForm,hideBankAccountBillingForm:this.hideBankAccountBillingForm,hideSubmitButton:!0,paymentMethodGroupId:c.paymentMethodGroupId}))))),i("div",{key:"ed7be422c4e369382fd42e0b0162357df7de2031",class:"mt-4"},i("justifi-button",{key:"849d648feec5ce805d6eb87acacf94d62e7a8f1b",text:"Pay",type:"submit",variant:"primary",clickHandler:e=>this.submit(e),disabled:c.isSubmitting||c.isWalletProcessing,isLoading:c.isSubmitting||c.isWalletProcessing,customStyle:{width:"100%",textAlign:"center"}})))))}static get watchers(){return{authToken:["propChanged"],checkoutId:["propChanged"],disableCreditCard:["propChanged"],disableBankAccount:["propChanged"],disablePaymentMethodGroup:["propChanged"]}}};export{h as justifi_checkout}
@@ -1 +1 @@
1
- import{h as s,r as t,c as i}from"./p-CV0Pyo1O.js";import{c as e,F as r}from"./p-D9sqTVmd.js";import{b as o,i as a,a as h,c as n,d as p,e as l,f as m}from"./p-BwPS3971.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{C as d,b as c}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import{C as u,B as j,b as v}from"./p-BcNb9bVO.js";import{J as f}from"./p-B5RnJXKG.js";import{B as b}from"./p-CHo7TfsM.js";import{S as w}from"./p-DzEdYT8R.js";import{H as C}from"./p-jIDKmNHy.js";import"./p-CZfYo5-1.js";import{c as y}from"./p-HtdZEF57.js";import{S as g}from"./p-uZ5KAseb.js";import{B}from"./p-XYgDHrVL.js";import{m as D,a as _}from"./p-CXIRxyAr.js";import{B as O}from"./p-Cc6TzfDZ.js";import"./p-BFTU3MAI.js";import"./p-DHB_XJ12.js";import"./p-DPA5TKvQ.js";import"./p-BBSnDYJw.js";import"./p-D8GTwl9v.js";import"./p-Ds_P-dB8.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-CPKMvyV_.js";import"./p-CXZRiaUw.js";const T=e(Object.assign(Object.assign({},o().fields),{legal_address:n(),additional_questions:h(),representative:a("representative")}));e(Object.assign(Object.assign({},p().fields),{legal_address:m(),additional_questions:h(),representative:l("representative")}));const x=T,S=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(g,{width:"25%"})),s("div",{class:"col-12"},s(g,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(g,{width:"50%"}),s(g,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(g,{width:"65%"}),s(g,{width:"35%"}))),A=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(g,{width:"40%",height:"40px"})),s(S,null),s(S,null),s(S,null)),H=class{constructor(s){t(this,s),this.submitEvent=i(this,"submit-event",7),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),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(){y(),this.analytics=new f(this),this.formController=new r(x),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=D({authToken:this.authToken,businessId:this.businessId,service:new O}),this.patchBusiness=_({authToken:this.authToken,businessId:this.businessId,service:new O}),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:c.MISSING_PROPS,severity:d.ERROR})}handleReponse(s){s.error&&(this.errorMessage=v.patchData),this.submitEvent.emit({response:s}),this.instantiateBusiness(s.data)}render(){return s(w,null,this.isLoading?s(A,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("business-core-info",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("legal-address-form",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("additional-questions",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("business-representative",{formController:this.formController,country:this.country})),s("div",{class:"col-12 d-flex flex-row-reverse"},s(b,{type:"submit",disabled:this.disabledState,variant:"primary",onClick:()=>this.clickEvent.emit({name:B.submit}),isLoading:this.isSaving},"Submit")))))}};export{H as justifi_business_form}
1
+ import{h as s,r as t,c as i}from"./p-CV0Pyo1O.js";import{c as e,F as r}from"./p-D9sqTVmd.js";import{b as o,i as a,a as h,c as n,d as p,e as l,f as m}from"./p-BwPS3971.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{C as d,b as c}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import{C as u,B as j,b as v}from"./p-BcNb9bVO.js";import{J as f}from"./p-CGTKc-Ra.js";import{B as b}from"./p-CHo7TfsM.js";import{S as w}from"./p-DzEdYT8R.js";import{H as C}from"./p-jIDKmNHy.js";import"./p-CZfYo5-1.js";import{c as g}from"./p-CoY0w4be.js";import{S as y}from"./p-uZ5KAseb.js";import{B}from"./p-XYgDHrVL.js";import{m as D,a as O}from"./p-CXIRxyAr.js";import{B as S}from"./p-CiIGpNnJ.js";import"./p-BFTU3MAI.js";import"./p-DHB_XJ12.js";import"./p-DPA5TKvQ.js";import"./p-BBSnDYJw.js";import"./p-D8GTwl9v.js";import"./p-Ds_P-dB8.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-CPKMvyV_.js";import"./p-CXZRiaUw.js";const _=e(Object.assign(Object.assign({},o().fields),{legal_address:n(),additional_questions:h(),representative:a("representative")}));e(Object.assign(Object.assign({},p().fields),{legal_address:m(),additional_questions:h(),representative:l("representative")}));const x=_,T=()=>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%"}))),I=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(y,{width:"40%",height:"40px"})),s(T,null),s(T,null),s(T,null)),A=class{constructor(s){t(this,s),this.submitEvent=i(this,"submit-event",7),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),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(){g(),this.analytics=new f(this),this.formController=new r(x),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=D({authToken:this.authToken,businessId:this.businessId,service:new S}),this.patchBusiness=O({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:c.MISSING_PROPS,severity:d.ERROR})}handleReponse(s){s.error&&(this.errorMessage=v.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("business-core-info",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("legal-address-form",{formController:this.formController,country:this.country})),s("div",{class:"col-12 mb-4"},s("additional-questions",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("business-representative",{formController:this.formController,country:this.country})),s("div",{class:"col-12 d-flex flex-row-reverse"},s(b,{type:"submit",disabled:this.disabledState,variant:"primary",onClick:()=>this.clickEvent.emit({name:B.submit}),isLoading:this.isSaving},"Submit")))))}};export{A as justifi_business_form}
@@ -1 +1 @@
1
- import{h as s,r as t,c as i}from"./p-CV0Pyo1O.js";import{J as e}from"./p-B5RnJXKG.js";import{C as r,b as o}from"./p-AyLerOda.js";import{m as n,b as a}from"./p-CXIRxyAr.js";import{B as h}from"./p-Cc6TzfDZ.js";import{A as p}from"./p-B2CETB_i.js";import"./p-CLHwhyvu.js";import{C as l,B as m,c as d}from"./p-BcNb9bVO.js";import{c}from"./p-HtdZEF57.js";import{l as u}from"./p-Ds_P-dB8.js";import{t as v}from"./p-CPKMvyV_.js";import{S as g}from"./p-DzEdYT8R.js";import{H as f}from"./p-jIDKmNHy.js";import"./p-CZfYo5-1.js";import{B as y}from"./p-XYgDHrVL.js";import{P as b}from"./p-DSclFZ32.js";import"./p-Dwe9A9Fk.js";import"./p-CXZRiaUw.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-HXpYMWUU.js";import"./p-uZ5KAseb.js";const w=p();class j{async postProvisioning(s,t,i){return w.post({endpoint:"entities/provisioning",body:{business_id:t,product_category:i},authToken:s})}}const C=()=>s("div",{class:"row gap-3 p-5"},s("div",{class:"col-12"},s(f,{text:"Business Already Provisioned"})),s("div",{class:"col-12",part:v},s("p",null,"We have already received the onboarding information for this business."))),k=()=>s("div",{class:"row gap-3 p5"},s("div",{class:"col-12"},s(f,{text:"You're all set for now"})),s("div",{class:"col-12",part:v},s("p",null,"We're reviewing your information and working on your approval. We'll be in touch to let you know once you've been approved (or if we find anything that needs fixing). Have a good one!"))),S=()=>s("div",{class:"row gap-3 p-5"},s("div",{class:"col-12"},s(f,{text:"Something went wrong"})),s("div",{class:"col-12",part:v},s("p",null,"There was an error submitting the provisioning. Your progress has been saved — please try again later or contact the support team."))),B=class{constructor(s){t(this,s),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),this.submitEvent=i(this,"submit-event",7),this.loading=!1,this.businessLoading=!0,this.businessProvisioned=!1,this.formSubmitted=!1,this.submissionFailed=!1,this.currentStep=0,this.country=l.USA,this.allowOptionalFields=!1,this.formTitle="Business Information",this.refs=[],this.setBusinessProvisioned=()=>new Promise((s=>{this.getBusiness({onSuccess:t=>{const i=new m(t.data);this.businessProvisioned=d(i),this.country=i.country_of_establishment,this.businessProvisioned&&this.errorEvent.emit({message:"A request to provision payments for this business has already been submitted.",errorCode:o.PROVISIONING_REQUESTED,severity:r.INFO}),this.businessLoading=!1,s()},onError:({error:t,code:i,severity:e})=>{this.errorEvent.emit({message:t,errorCode:i,severity:e}),this.businessLoading=!1,s()}})})),this.postProvisioningData=()=>{this.postProvisioning({onSuccess:s=>{this.formSubmitted=!0,this.submitEvent.emit({response:s})},onError:({error:s,code:t,severity:i})=>{this.submissionFailed=!0,this.submitEvent.emit({response:{error:s}}),this.errorEvent.emit({message:s,errorCode:t,severity:i})}})},this.incrementSteps=()=>{if(this.currentStep<this.totalSteps)return this.currentStep++},this.decrementSteps=()=>{this.currentStep>0&&(this.currentStep-=1)},this.previousStepButtonOnClick=()=>{this.clickEvent.emit({name:y.previousStep}),this.decrementSteps()},this.nextStepButtonOnClick=(s,t)=>{s.preventDefault(),this.clickEvent.emit({name:t}),this.refs[this.currentStep].validateAndSubmit({onSuccess:this.incrementSteps})}}propChanged(){this.initializeApi()}handleFormCompleted(){this.postProvisioningData()}handleFormLoading(s){this.loading=s.detail}async componentWillLoad(){c(),this.analytics=new e(this),this.initializeApi(),this.getBusiness?await this.setBusinessProvisioned():this.businessLoading=!1,this.refs=new Array(8)}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeApi(){this.authToken&&this.businessId?u(this.authToken)?this.errorEvent.emit({message:"auth-token is expired",errorCode:o.NOT_AUTHENTICATED,severity:r.ERROR}):(this.getBusiness=n({authToken:this.authToken,businessId:this.businessId,service:new h}),this.postProvisioning=a({authToken:this.authToken,businessId:this.businessId,product:"payment",service:new j})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:o.MISSING_PROPS,severity:r.ERROR})}get formDisabled(){return this.loading||this.businessProvisioned}get totalSteps(){return this.refs.length-1}get stepCounter(){return`Step ${this.currentStep+1} of ${this.totalSteps+1}`}render(){return s(g,null,this.businessLoading?s(b,null):this.businessProvisioned?s(C,null):this.formSubmitted?s(k,null):this.submissionFailed?s(S,null):s("div",{class:"row gap-3"},s(f,{text:this.formTitle}),s("payment-provisioning-form-steps",{businessId:this.businessId,authToken:this.authToken,refs:this.refs,currentStep:this.currentStep,allowOptionalFields:this.allowOptionalFields,country:this.country,handleFormLoading:this.handleFormLoading}),s("div",{class:"d-flex justify-content-between align-items-center"},s("div",{class:"d-flex align-items-center",part:v},this.stepCounter),s("payment-provisioning-form-buttons",{currentStep:this.currentStep,totalSteps:this.totalSteps,formLoading:this.loading,formDisabled:this.formDisabled,previousStepButtonOnClick:this.previousStepButtonOnClick,nextStepButtonOnClick:this.nextStepButtonOnClick}))))}static get watchers(){return{authToken:["propChanged"],businessId:["propChanged"]}}};export{B as justifi_payment_provisioning}
1
+ import{h as s,r as t,c as i}from"./p-CV0Pyo1O.js";import{J as e}from"./p-CGTKc-Ra.js";import{C as r,b as o}from"./p-AyLerOda.js";import{m as n,b as a}from"./p-CXIRxyAr.js";import{B as h}from"./p-CiIGpNnJ.js";import{A as p}from"./p-ClGSzzda.js";import"./p-CLHwhyvu.js";import{C as l,B as m,c as d}from"./p-BcNb9bVO.js";import{c}from"./p-CoY0w4be.js";import{l as u}from"./p-Ds_P-dB8.js";import{t as v}from"./p-CPKMvyV_.js";import{S as g}from"./p-DzEdYT8R.js";import{H as f}from"./p-jIDKmNHy.js";import"./p-CZfYo5-1.js";import{B as y}from"./p-XYgDHrVL.js";import{P as b}from"./p-DSclFZ32.js";import"./p-DmrfgGzv.js";import"./p-CXZRiaUw.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-HXpYMWUU.js";import"./p-uZ5KAseb.js";const w=p();class j{async postProvisioning(s,t,i){return w.post({endpoint:"entities/provisioning",body:{business_id:t,product_category:i},authToken:s})}}const C=()=>s("div",{class:"row gap-3 p-5"},s("div",{class:"col-12"},s(f,{text:"Business Already Provisioned"})),s("div",{class:"col-12",part:v},s("p",null,"We have already received the onboarding information for this business."))),S=()=>s("div",{class:"row gap-3 p5"},s("div",{class:"col-12"},s(f,{text:"You're all set for now"})),s("div",{class:"col-12",part:v},s("p",null,"We're reviewing your information and working on your approval. We'll be in touch to let you know once you've been approved (or if we find anything that needs fixing). Have a good one!"))),k=()=>s("div",{class:"row gap-3 p-5"},s("div",{class:"col-12"},s(f,{text:"Something went wrong"})),s("div",{class:"col-12",part:v},s("p",null,"There was an error submitting the provisioning. Your progress has been saved — please try again later or contact the support team."))),x=class{constructor(s){t(this,s),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),this.submitEvent=i(this,"submit-event",7),this.loading=!1,this.businessLoading=!0,this.businessProvisioned=!1,this.formSubmitted=!1,this.submissionFailed=!1,this.currentStep=0,this.country=l.USA,this.allowOptionalFields=!1,this.formTitle="Business Information",this.refs=[],this.setBusinessProvisioned=()=>new Promise((s=>{this.getBusiness({onSuccess:t=>{const i=new m(t.data);this.businessProvisioned=d(i),this.country=i.country_of_establishment,this.businessProvisioned&&this.errorEvent.emit({message:"A request to provision payments for this business has already been submitted.",errorCode:o.PROVISIONING_REQUESTED,severity:r.INFO}),this.businessLoading=!1,s()},onError:({error:t,code:i,severity:e})=>{this.errorEvent.emit({message:t,errorCode:i,severity:e}),this.businessLoading=!1,s()}})})),this.postProvisioningData=()=>{this.postProvisioning({onSuccess:s=>{this.formSubmitted=!0,this.submitEvent.emit({response:s})},onError:({error:s,code:t,severity:i})=>{this.submissionFailed=!0,this.submitEvent.emit({response:{error:s}}),this.errorEvent.emit({message:s,errorCode:t,severity:i})}})},this.incrementSteps=()=>{if(this.currentStep<this.totalSteps)return this.currentStep++},this.decrementSteps=()=>{this.currentStep>0&&(this.currentStep-=1)},this.previousStepButtonOnClick=()=>{this.clickEvent.emit({name:y.previousStep}),this.decrementSteps()},this.nextStepButtonOnClick=(s,t)=>{s.preventDefault(),this.clickEvent.emit({name:t}),this.refs[this.currentStep].validateAndSubmit({onSuccess:this.incrementSteps})}}propChanged(){this.initializeApi()}handleFormCompleted(){this.postProvisioningData()}handleFormLoading(s){this.loading=s.detail}async componentWillLoad(){c(),this.analytics=new e(this),this.initializeApi(),this.getBusiness?await this.setBusinessProvisioned():this.businessLoading=!1,this.refs=new Array(8)}disconnectedCallback(){var s;null===(s=this.analytics)||void 0===s||s.cleanup()}initializeApi(){this.authToken&&this.businessId?u(this.authToken)?this.errorEvent.emit({message:"auth-token is expired",errorCode:o.NOT_AUTHENTICATED,severity:r.ERROR}):(this.getBusiness=n({authToken:this.authToken,businessId:this.businessId,service:new h}),this.postProvisioning=a({authToken:this.authToken,businessId:this.businessId,product:"payment",service:new j})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:o.MISSING_PROPS,severity:r.ERROR})}get formDisabled(){return this.loading||this.businessProvisioned}get totalSteps(){return this.refs.length-1}get stepCounter(){return`Step ${this.currentStep+1} of ${this.totalSteps+1}`}render(){return s(g,null,this.businessLoading?s(b,null):this.businessProvisioned?s(C,null):this.formSubmitted?s(S,null):this.submissionFailed?s(k,null):s("div",{class:"row gap-3"},s(f,{text:this.formTitle}),s("payment-provisioning-form-steps",{businessId:this.businessId,authToken:this.authToken,refs:this.refs,currentStep:this.currentStep,allowOptionalFields:this.allowOptionalFields,country:this.country,handleFormLoading:this.handleFormLoading}),s("div",{class:"d-flex justify-content-between align-items-center"},s("div",{class:"d-flex align-items-center",part:v},this.stepCounter),s("payment-provisioning-form-buttons",{currentStep:this.currentStep,totalSteps:this.totalSteps,formLoading:this.loading,formDisabled:this.formDisabled,previousStepButtonOnClick:this.previousStepButtonOnClick,nextStepButtonOnClick:this.nextStepButtonOnClick}))))}static get watchers(){return{authToken:["propChanged"],businessId:["propChanged"]}}};export{x as justifi_payment_provisioning}
@@ -1 +1 @@
1
- import{h as e,r as t,c as a}from"./p-CV0Pyo1O.js";import{P as i}from"./p-DMGq2Rrg.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{k as s,C as d,b as o}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{g as c,a as r}from"./p-CXZRiaUw.js";import{h,b as l,d as b}from"./p-Ds_P-dB8.js";import{a as f,b as n,D as p,c as v,C as u,E as y}from"./p-Cu7hgXL1.js";import{J as m}from"./p-B5RnJXKG.js";import{m as k,M as j}from"./p-B9fbqJSf.js";import{c as C}from"./p-HtdZEF57.js";import{B as g}from"./p-CHo7TfsM.js";import{S as w}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{S as x}from"./p-uZ5KAseb.js";import{a as D,B as T}from"./p-CHw7tICr.js";import"./p-B2CETB_i.js";import"./p-D8GTwl9v.js";import"./p-CPKMvyV_.js";import"./p-Dwe9A9Fk.js";const A=()=>e("div",{class:"row gap-3"},e("div",{class:"col-12"},e(x,{width:"35%",height:"30px"})),e("div",{class:"col-12"},e(x,{width:"70%"})),e("div",{class:"col-12"},e(x,{width:"40%"})),e("div",{class:"col-12"},e(x,{width:"40%"})),e("div",{class:"col-12"},e(x,{width:"100%"})),e("div",{class:"col-12"},e(x,{width:"80%"}))),E=class{constructor(e){t(this,e),this.errorEvent=a(this,"error-event",7),this.recordClickEvent=a(this,"record-click-event",7),this.enableRecordClick=!1,this.loading=!0,this.errorMessage=null,this.downloadCSV=()=>{this.getPayoutCSV({payoutId:this.payout.id,onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a})}})},this.handleRecordClick=e=>{this.recordClickEvent.emit({id:e,type:"account"})}}componentWillLoad(){C(),this.analytics=new m(this),this.initializeServices(),this.getPayout&&this.fetchData()}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}propChanged(){this.initializeServices()}getPayoutWatcher(){this.fetchData()}initializeServices(){this.payoutId&&this.authToken?(this.getPayout=(({id:e,authToken:t,service:a})=>async({onSuccess:i,onError:o})=>{var h;try{const l=await a.fetchPayout(e,t);l.error?o({error:r(l.error),code:c(null===(h=l.error)||void 0===h?void 0:h.code),severity:d.ERROR}):i(new s(l.data))}catch(e){o({error:r(e),code:c(null==e?void 0:e.code),severity:d.ERROR})}})({id:this.payoutId,authToken:this.authToken,service:new i}),this.getPayoutCSV=k({authToken:this.authToken,service:new i})):(this.errorMessage="Failed to load payout details. payoutId or authToken is not provided.",this.errorEvent.emit({message:this.errorMessage,errorCode:o.MISSING_PROPS,severity:d.ERROR}))}fetchData(){this.loading=!0,this.getPayout({onSuccess:e=>{this.errorMessage=null,this.payout=e,this.loading=!1},onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a}),this.loading=!1}})}formatMethod(e){return"ach"===e?"ACH":h(e)}render(){var t,a,i,s;return e(w,{key:"da86ceeb41265056f9bc64c07b3bd7db4a91471c"},this.loading&&e(A,{key:"49ae2848db4a5b59770c2b84bfba745861573a6d"}),!this.loading&&this.errorMessage&&y(this.errorMessage),!this.loading&&this.payout&&e("justifi-details",{key:"b4e6740d49ae1099f28ea3d6f21fe0da48149c71",errorMessage:this.errorMessage},e(f,{key:"e9efbeeb7894996f318d90fb38826a6a9e4cc4b3",slot:"head-info",badge:e("div",{class:"d-flex gap-1"},j(null===(t=this.payout)||void 0===t?void 0:t.status),e(D,"expedited"===this.payout.settlement_priority?{variant:T.WARNING,title:"Expedited",text:"Expedited"}:{variant:T.SECONDARY,title:"Standard",text:"Standard"})),title:this.payout.formattedPaymentAmount(this.payout.amount)},e(n,{key:"feb913d2b90e86fb4f5575379e9b9a47adfa723f",classes:"border-1 border-end",title:"Updated At",value:`${l(this.payout.updated_at)} ${b(this.payout.updated_at)}`}),e(n,{key:"9fe6da08323735948f145a72a02db26a6eb31f02",classes:"border-1 border-end",title:"Created At",value:`${l(this.payout.created_at)} ${b(this.payout.created_at)}`}),e(n,{key:"d01c4b7ea7c966b524026a6e97c0575466de3f74",title:"ID",value:this.payout.id}),e("div",{key:"4c4f73e5898caedbb1b7aba326dbfb0dcfbb59e6",class:"m-4"},e(g,{key:"622a6e8384da37f4bb3896bcafea46ef697b140e",variant:"outline-secondary",class:"btn btn-outline-secondary d-flex align-items-center",onClick:this.downloadCSV},"Export CSV"))),e("div",{key:"9b9271663673dc2e78e89bec5c7c9c47daa6761e",slot:"detail-sections"},e(p,{key:"ac5c6e1c09e63cd0616794b7df367a73889e37b2",sectionTitle:"Details"}),e("div",{key:"95f9d5a0097499fdb24f44ea87313c3b34a96068",class:"d-flex flex-column gap-2 w-100"},e(v,{key:"ecf60d4a4783c8fb52e10222dd4f6e9935cd0910",title:"Date paid",value:l(this.payout.deposits_at)}),e(v,{key:"289971a08641bc2dc725d603ef611291025cd6b4",title:"Statement Description",value:this.payout.description}),e(v,{key:"d237aacbeb9b23ac0d45aa978350aad4824b0695",title:"Payout Method",value:this.formatMethod(this.payout.delivery_method)}),e(v,{key:"744ef2b8878b742483750fb921ca9790f6aa9ec1",title:"Amount",value:this.payout.formattedPaymentAmount(this.payout.amount)}),e(v,{key:"dbf3327510523afc6edd78ea2926f99593da9748",title:"Fee",value:this.payout.formattedPaymentAmount(this.payout.fees_total)})),e(p,{key:"15983342dbe916770291f33226b744e8c4c1129e",sectionTitle:"Account"}),e("div",{key:"b3fb4353794dc490633a14abcc829ff0835d989f",class:"d-flex flex-column gap-2 w-100"},e(v,{key:"665fbe47e3b35c0b7ffb3e6c17e15c3703c90250",title:"ID",value:this.payout.account_id,onClick:this.enableRecordClick?()=>this.handleRecordClick(this.payout.account_id):void 0}),e(v,{key:"5b15d5bc8a63541ac8d77eddccb47c89659fd05a",title:"Account Type",value:null===(a=this.payout.bank_account)||void 0===a?void 0:a.account_type}),e(v,{key:"947043e3571f27a672060f2101296daba0073727",title:"Institution",value:null===(i=this.payout.bank_account)||void 0===i?void 0:i.account_type}),e(v,{key:"74ac687b37c7ca91a88863730560333c41b9413c",title:"Routing Number",value:null===(s=this.payout.bank_account)||void 0===s?void 0:s.routing_number}),e(v,{key:"43cd9aa5ac45f6efba97901e3e1386446065c28a",title:"Account Number",value:this.payout.bank_account?`**** ${this.payout.bank_account.account_number_last4}`:void 0})),this.payout.metadata&&[e(p,{key:"8bf04ae43a08d8ef624357f64df900a11b8f2dad",sectionTitle:"Metadata"}),e("div",{key:"1bf737734f34f626cbfb9dd878afbb91b6f01913",class:"d-table gap-2 w-100"},e(u,{key:"0d1481e1823e9b2f28328ebfb3cd1c92c6342cc6",metadata:this.payout.metadata}))])))}static get watchers(){return{payoutId:["propChanged"],authToken:["propChanged"],getPayout:["getPayoutWatcher"]}}};export{E as justifi_payout_details}
1
+ import{h as e,r as t,c as a}from"./p-CV0Pyo1O.js";import{P as s}from"./p-n4OrTH9l.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{k as i,C as d,b as o}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{g as c,a as r}from"./p-CXZRiaUw.js";import{h,b as l,d as b}from"./p-Ds_P-dB8.js";import{a as f,b as n,D as p,c as v,C as u,E as y}from"./p-Cu7hgXL1.js";import{J as m}from"./p-CGTKc-Ra.js";import{m as k,M as C}from"./p-B9fbqJSf.js";import{c as j}from"./p-CoY0w4be.js";import{B as g}from"./p-CHo7TfsM.js";import{S as w}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{S as x}from"./p-uZ5KAseb.js";import{a as T,B as D}from"./p-CHw7tICr.js";import"./p-ClGSzzda.js";import"./p-DmrfgGzv.js";import"./p-D8GTwl9v.js";import"./p-CPKMvyV_.js";const S=()=>e("div",{class:"row gap-3"},e("div",{class:"col-12"},e(x,{width:"35%",height:"30px"})),e("div",{class:"col-12"},e(x,{width:"70%"})),e("div",{class:"col-12"},e(x,{width:"40%"})),e("div",{class:"col-12"},e(x,{width:"40%"})),e("div",{class:"col-12"},e(x,{width:"100%"})),e("div",{class:"col-12"},e(x,{width:"80%"}))),A=class{constructor(e){t(this,e),this.errorEvent=a(this,"error-event",7),this.recordClickEvent=a(this,"record-click-event",7),this.enableRecordClick=!1,this.loading=!0,this.errorMessage=null,this.downloadCSV=()=>{this.getPayoutCSV({payoutId:this.payout.id,onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a})}})},this.handleRecordClick=e=>{this.recordClickEvent.emit({id:e,type:"account"})}}componentWillLoad(){j(),this.analytics=new m(this),this.initializeServices(),this.getPayout&&this.fetchData()}disconnectedCallback(){var e;null===(e=this.analytics)||void 0===e||e.cleanup()}propChanged(){this.initializeServices()}getPayoutWatcher(){this.fetchData()}initializeServices(){this.payoutId&&this.authToken?(this.getPayout=(({id:e,authToken:t,service:a})=>async({onSuccess:s,onError:o})=>{var h;try{const l=await a.fetchPayout(e,t);l.error?o({error:r(l.error),code:c(null===(h=l.error)||void 0===h?void 0:h.code),severity:d.ERROR}):s(new i(l.data))}catch(e){o({error:r(e),code:c(null==e?void 0:e.code),severity:d.ERROR})}})({id:this.payoutId,authToken:this.authToken,service:new s}),this.getPayoutCSV=k({authToken:this.authToken,service:new s})):(this.errorMessage="Failed to load payout details. payoutId or authToken is not provided.",this.errorEvent.emit({message:this.errorMessage,errorCode:o.MISSING_PROPS,severity:d.ERROR}))}fetchData(){this.loading=!0,this.getPayout({onSuccess:e=>{this.errorMessage=null,this.payout=e,this.loading=!1},onError:({error:e,code:t,severity:a})=>{this.errorMessage=e,this.errorEvent.emit({message:e,errorCode:t,severity:a}),this.loading=!1}})}formatMethod(e){return"ach"===e?"ACH":h(e)}render(){var t,a,s,i;return e(w,{key:"da86ceeb41265056f9bc64c07b3bd7db4a91471c"},this.loading&&e(S,{key:"49ae2848db4a5b59770c2b84bfba745861573a6d"}),!this.loading&&this.errorMessage&&y(this.errorMessage),!this.loading&&this.payout&&e("justifi-details",{key:"b4e6740d49ae1099f28ea3d6f21fe0da48149c71",errorMessage:this.errorMessage},e(f,{key:"e9efbeeb7894996f318d90fb38826a6a9e4cc4b3",slot:"head-info",badge:e("div",{class:"d-flex gap-1"},C(null===(t=this.payout)||void 0===t?void 0:t.status),e(T,"expedited"===this.payout.settlement_priority?{variant:D.WARNING,title:"Expedited",text:"Expedited"}:{variant:D.SECONDARY,title:"Standard",text:"Standard"})),title:this.payout.formattedPaymentAmount(this.payout.amount)},e(n,{key:"feb913d2b90e86fb4f5575379e9b9a47adfa723f",classes:"border-1 border-end",title:"Updated At",value:`${l(this.payout.updated_at)} ${b(this.payout.updated_at)}`}),e(n,{key:"9fe6da08323735948f145a72a02db26a6eb31f02",classes:"border-1 border-end",title:"Created At",value:`${l(this.payout.created_at)} ${b(this.payout.created_at)}`}),e(n,{key:"d01c4b7ea7c966b524026a6e97c0575466de3f74",title:"ID",value:this.payout.id}),e("div",{key:"4c4f73e5898caedbb1b7aba326dbfb0dcfbb59e6",class:"m-4"},e(g,{key:"622a6e8384da37f4bb3896bcafea46ef697b140e",variant:"outline-secondary",class:"btn btn-outline-secondary d-flex align-items-center",onClick:this.downloadCSV},"Export CSV"))),e("div",{key:"9b9271663673dc2e78e89bec5c7c9c47daa6761e",slot:"detail-sections"},e(p,{key:"ac5c6e1c09e63cd0616794b7df367a73889e37b2",sectionTitle:"Details"}),e("div",{key:"95f9d5a0097499fdb24f44ea87313c3b34a96068",class:"d-flex flex-column gap-2 w-100"},e(v,{key:"ecf60d4a4783c8fb52e10222dd4f6e9935cd0910",title:"Date paid",value:l(this.payout.deposits_at)}),e(v,{key:"289971a08641bc2dc725d603ef611291025cd6b4",title:"Statement Description",value:this.payout.description}),e(v,{key:"d237aacbeb9b23ac0d45aa978350aad4824b0695",title:"Payout Method",value:this.formatMethod(this.payout.delivery_method)}),e(v,{key:"744ef2b8878b742483750fb921ca9790f6aa9ec1",title:"Amount",value:this.payout.formattedPaymentAmount(this.payout.amount)}),e(v,{key:"dbf3327510523afc6edd78ea2926f99593da9748",title:"Fee",value:this.payout.formattedPaymentAmount(this.payout.fees_total)})),e(p,{key:"15983342dbe916770291f33226b744e8c4c1129e",sectionTitle:"Account"}),e("div",{key:"b3fb4353794dc490633a14abcc829ff0835d989f",class:"d-flex flex-column gap-2 w-100"},e(v,{key:"665fbe47e3b35c0b7ffb3e6c17e15c3703c90250",title:"ID",value:this.payout.account_id,onClick:this.enableRecordClick?()=>this.handleRecordClick(this.payout.account_id):void 0}),e(v,{key:"5b15d5bc8a63541ac8d77eddccb47c89659fd05a",title:"Account Type",value:null===(a=this.payout.bank_account)||void 0===a?void 0:a.account_type}),e(v,{key:"947043e3571f27a672060f2101296daba0073727",title:"Institution",value:null===(s=this.payout.bank_account)||void 0===s?void 0:s.account_type}),e(v,{key:"74ac687b37c7ca91a88863730560333c41b9413c",title:"Routing Number",value:null===(i=this.payout.bank_account)||void 0===i?void 0:i.routing_number}),e(v,{key:"43cd9aa5ac45f6efba97901e3e1386446065c28a",title:"Account Number",value:this.payout.bank_account?`**** ${this.payout.bank_account.account_number_last4}`:void 0})),this.payout.metadata&&[e(p,{key:"8bf04ae43a08d8ef624357f64df900a11b8f2dad",sectionTitle:"Metadata"}),e("div",{key:"1bf737734f34f626cbfb9dd878afbb91b6f01913",class:"d-table gap-2 w-100"},e(u,{key:"0d1481e1823e9b2f28328ebfb3cd1c92c6342cc6",metadata:this.payout.metadata}))])))}static get watchers(){return{payoutId:["propChanged"],authToken:["propChanged"],getPayout:["getPayoutWatcher"]}}};export{A as justifi_payout_details}
@@ -1 +1 @@
1
- import{r as t,h as a}from"./p-CV0Pyo1O.js";import{J as o}from"./p-B5RnJXKG.js";import{c as r}from"./p-HtdZEF57.js";import{w as s}from"./p-DVJaoI_m.js";import{S as p}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-D8GTwl9v.js";const i=class{constructor(a){t(this,a)}async componentWillLoad(){await s(),r(),this.analytics=new o(this)}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){return this.cardFormElement.validate()}async tokenize({clientId:t,paymentMethodMetadata:a,account:o}){return this.cardFormElement.tokenize({clientId:t,paymentMethodMetadata:a,account:o})}render(){return a(p,{key:"e8591312a00d22c68812fda0b56a125ffd763e01"},a("card-form",{key:"e987ea9f3bcd2bf0aa8b2c6749bff3b902f20519",ref:t=>this.cardFormElement=t}))}};export{i as justifi_card_form}
1
+ import{r as t,h as a}from"./p-CV0Pyo1O.js";import{J as o}from"./p-CGTKc-Ra.js";import{c as r}from"./p-CoY0w4be.js";import{w as s}from"./p-DVJaoI_m.js";import{S as p}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-D8GTwl9v.js";const i=class{constructor(a){t(this,a)}async componentWillLoad(){await s(),r(),this.analytics=new o(this)}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){return this.cardFormElement.validate()}async tokenize({clientId:t,paymentMethodMetadata:a,account:o}){return this.cardFormElement.tokenize({clientId:t,paymentMethodMetadata:a,account:o})}render(){return a(p,{key:"e8591312a00d22c68812fda0b56a125ffd763e01"},a("card-form",{key:"e987ea9f3bcd2bf0aa8b2c6749bff3b902f20519",ref:t=>this.cardFormElement=t}))}};export{i as justifi_card_form}
@@ -0,0 +1 @@
1
+ import{A as a}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const n=a();class t{async fetchPayments(a,t,e){return n.get({endpoint:`account/${a}/payments`,params:e,authToken:t})}async fetchPayment(a,t){return n.get({endpoint:`payments/${a}`,authToken:t})}async fetchPaymentTransactions(a,t,e){return n.get({endpoint:`payments/${a}/payment_balance_transactions`,params:e,authToken:t})}}export{t as P}
@@ -1 +1 @@
1
- import{A as e}from"./p-B2CETB_i.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const r=e();class n{async fetchTerminals(e,n,s){return r.get({endpoint:"terminals",params:s,headers:{Account:e},authToken:n})}async fetchTerminal(e,n){return r.get({endpoint:`terminals/${e}`,authToken:n})}async fetchTerminalModels(e,n){return r.get({endpoint:"terminals/order_models",headers:{"sub-account":e},authToken:n})}async orderTerminals(e,n){return r.post({endpoint:"terminals/orders",body:n,headers:{"sub-account":n.sub_account_id},authToken:e})}}export{n as T}
1
+ import{A as e}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const r=e();class n{async fetchTerminals(e,n,a){return r.get({endpoint:"terminals",params:a,headers:{Account:e},authToken:n})}async fetchTerminal(e,n){return r.get({endpoint:`terminals/${e}`,authToken:n})}async fetchTerminalModels(e,n){return r.get({endpoint:"terminals/order_models",headers:{"sub-account":e},authToken:n})}async orderTerminals(e,n){return r.post({endpoint:"terminals/orders",body:n,headers:{"sub-account":n.sub_account_id},authToken:e})}}export{n as T}
@@ -1 +1 @@
1
- import{p as t}from"./p-Dwe9A9Fk.js";import{A as i}from"./p-B2CETB_i.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const s=i();class e{async record(t){return s.post({endpoint:"analytics",body:t})}}class n{constructor(t){this.eventListeners=new Map,this.handleCustomEvent=async t=>{await this.service.record(t)},window.location.origin.includes("localhost")||window.location.origin.includes("docs.justifi.tech")||(this.service=new e,this.componentInstance=t,this.setUpBasicData(),this.setupLifecycleTracking(),this.trackCustomEvents())}get resourceId(){return this.componentInstance.accountId||this.componentInstance.businessId||this.componentInstance.paymentId||this.componentInstance.payoutId||this.componentInstance.checkoutId}setUpBasicData(){this.basicData={component_name:this.componentInstance.tagName,component_version:t.version,client_user_agent:navigator.userAgent,client_platform:navigator.userAgent,client_origin:window.location.origin,resource_id:this.resourceId}}trackCustomEvents(){this.eventEmitters=["submit-event","error-event"],this.eventEmitters.forEach((t=>{if("function"==typeof this.componentInstance.addEventListener){const i=i=>this.handleCustomEvent({event_type:t,data:Object.assign(Object.assign({},this.basicData),"error-event"===t&&{error:i.detail})});this.eventListeners.set(t,i),this.componentInstance.addEventListener(t,i)}}))}setupLifecycleTracking(){const t=this.componentInstance.componentDidLoad;this.componentInstance.componentDidLoad=()=>{if(this.service.record({event_type:"init",data:this.basicData}),t)return t.apply(this.componentInstance)}}cleanup(){this.eventListeners.forEach(((t,i)=>{this.componentInstance.removeEventListener(i,t)})),this.eventListeners.clear()}}export{n as J}
1
+ import{p as t}from"./p-DmrfgGzv.js";import{A as s}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const i=s();class e{async record(t){return i.post({endpoint:"analytics",body:t})}}class n{constructor(t){this.eventListeners=new Map,this.handleCustomEvent=async t=>{await this.service.record(t)},window.location.origin.includes("localhost")||window.location.origin.includes("docs.justifi.tech")||(this.service=new e,this.componentInstance=t,this.setUpBasicData(),this.setupLifecycleTracking(),this.trackCustomEvents())}get resourceId(){return this.componentInstance.accountId||this.componentInstance.businessId||this.componentInstance.paymentId||this.componentInstance.payoutId||this.componentInstance.checkoutId}setUpBasicData(){this.basicData={component_name:this.componentInstance.tagName,component_version:t.version,client_user_agent:navigator.userAgent,client_platform:navigator.userAgent,client_origin:window.location.origin,resource_id:this.resourceId}}trackCustomEvents(){this.eventEmitters=["submit-event","error-event"],this.eventEmitters.forEach((t=>{if("function"==typeof this.componentInstance.addEventListener){const s=s=>this.handleCustomEvent({event_type:t,data:Object.assign(Object.assign({},this.basicData),"error-event"===t&&{error:s.detail})});this.eventListeners.set(t,s),this.componentInstance.addEventListener(t,s)}}))}setupLifecycleTracking(){const t=this.componentInstance.componentDidLoad;this.componentInstance.componentDidLoad=()=>{if(this.service.record({event_type:"init",data:this.basicData}),t)return t.apply(this.componentInstance)}}cleanup(){this.eventListeners.forEach(((t,s)=>{this.componentInstance.removeEventListener(s,t)})),this.eventListeners.clear()}}export{n as J}
@@ -1 +1 @@
1
- import{A as t}from"./p-B2CETB_i.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const e=t();class o{async fetchCheckout(t,o){return e.get({endpoint:`checkouts/${o}`,authToken:t})}async fetchCheckouts(t,o,c){return e.get({endpoint:"checkouts",params:c,headers:{Account:t},authToken:o})}async complete(t,o,c){const n=`checkouts/${o}/complete`,s={payment_mode:c.payment_mode};return c.payment_token&&(s.payment_token=c.payment_token),e.post({endpoint:n,body:s,authToken:t})}}export{o as C}
1
+ import{A as t}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const e=t();class o{async fetchCheckout(t,o){return e.get({endpoint:`checkouts/${o}`,authToken:t})}async fetchCheckouts(t,o,c){return e.get({endpoint:"checkouts",params:c,headers:{Account:t},authToken:o})}async complete(t,o,c){const n=`checkouts/${o}/complete`,s={payment_mode:c.payment_mode};return c.payment_token&&(s.payment_token=c.payment_token),e.post({endpoint:n,body:s,authToken:t})}}export{o as C}
@@ -1 +1 @@
1
- import{A as t}from"./p-B2CETB_i.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const n=t();class e{async fetchBusiness(t,e){return n.get({endpoint:`entities/business/${t}`,authToken:e})}async patchBusiness(t,e,s){return n.patch({endpoint:`entities/business/${e}`,body:s,authToken:t})}}class s{async fetchIdentity(t,e){return n.get({endpoint:`entities/identity/${t}`,authToken:e})}async patchIdentity(t,e,s){return n.patch({endpoint:`entities/identity/${e}`,body:s,authToken:t})}async postIdentity(t,e){return n.post({endpoint:"entities/identity",body:e,authToken:t})}}class i{async postBankAccount(t,e){return n.post({endpoint:"entities/bank_accounts",body:e,authToken:t})}}class o{async postDocumentRecord(t,e){return n.post({endpoint:"entities/document",body:e,authToken:t})}}export{e as B,o as D,s as I,i as a}
1
+ import{A as t}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const n=t();class e{async fetchBusiness(t,e){return n.get({endpoint:`entities/business/${t}`,authToken:e})}async patchBusiness(t,e,s){return n.patch({endpoint:`entities/business/${e}`,body:s,authToken:t})}}class s{async fetchIdentity(t,e){return n.get({endpoint:`entities/identity/${t}`,authToken:e})}async patchIdentity(t,e,s){return n.patch({endpoint:`entities/identity/${e}`,body:s,authToken:t})}async postIdentity(t,e){return n.post({endpoint:"entities/identity",body:e,authToken:t})}}class i{async postBankAccount(t,e){return n.post({endpoint:"entities/bank_accounts",body:e,authToken:t})}}class o{async postDocumentRecord(t,e){return n.post({endpoint:"entities/document",body:e,authToken:t})}}export{e as B,o as D,s as I,i as a}
@@ -0,0 +1 @@
1
+ import{w as n,c as o}from"./p-DVJaoI_m.js";import{g as t}from"./p-Ds_P-dB8.js";import{p as a}from"./p-DmrfgGzv.js";const e=()=>{async function e(e){var s,i;const{authToken:r,endpoint:d,method:p,params:u,body:c,signal:m,headers:h}=e;await n();const l=`${o.apiOrigin}/v1/${d}`,f=u?`${l}?${new URLSearchParams(u)}`:l,y=await async function(n){return n?{Authorization:`Bearer ${n}`,"Idempotency-Key":t(),"Content-Type":"application/json","Justifi-Web-Component-Version":a.version}:{"Content-Type":"application/json","Justifi-Web-Component-Version":a.version}}(r),T=Object.assign(Object.assign({},y),h),g=await fetch(f,{method:p,headers:T,body:c,signal:m});if(!g)return void function(n){console.error(`Error fetching from ${n}`)}(f);if(204===g.status)return{};const b=await g.json().catch((()=>({})));if(!g.ok){const n=new Error((null===(s=null==b?void 0:b.error)||void 0===s?void 0:s.message)||("string"==typeof(null==b?void 0:b.error)?b.error:null)||(null==b?void 0:b.message)||`Request failed: ${g.status}`);throw n.code=null===(i=null==b?void 0:b.error)||void 0===i?void 0:i.code,n.status=g.status,n.body=b,n}return b}return{get:async function(n){const{authToken:o,endpoint:t,params:a,signal:s,headers:i}=n;return e({authToken:o,endpoint:t,method:"GET",params:a,signal:s,headers:i})},post:async function(n){const{authToken:o,endpoint:t,body:a,params:s,signal:i,headers:r}=n;return e({authToken:o,endpoint:t,method:"POST",params:s,body:JSON.stringify(a),signal:i,headers:r})},put:async function(n){const{authToken:o,endpoint:t,body:a,params:s,signal:i}=n;return e({authToken:o,endpoint:t,method:"PUT",params:s,body:JSON.stringify(a),signal:i})},patch:async function(n){const{authToken:o,endpoint:t,body:a,params:s,signal:i}=n;return e({authToken:o,endpoint:t,method:"PATCH",params:s,body:JSON.stringify(a),signal:i})},destroy:async function(n){const{authToken:o,endpoint:t,params:a,signal:s}=n;return e({authToken:o,endpoint:t,method:"DELETE",params:a,signal:s})}}};export{e as A}
@@ -1 +1 @@
1
- import{p as e}from"./p-Dwe9A9Fk.js";const s="__JUSTIFI_WC_VERSION__",o=async()=>{var o,t;if((()=>{if("undefined"==typeof globalThis)return;const o=e.version,t=globalThis[s];t&&t!==o?console.error(`@justifi/webcomponents: Multiple versions detected. Version ${t} was loaded first and registered all components. Version ${o} is also present but its components will NOT be used. To fix this, add to your package.json:\n"pnpm": { "overrides": { "@justifi/webcomponents": "${o}" } }`):globalThis[s]=o})(),"undefined"!=typeof process&&("test"===(null===(o=process.env)||void 0===o?void 0:o.NODE_ENV)||(null===(t=process.env)||void 0===t?void 0:t.JEST_WORKER_ID)))return;const i=e.version,n=e.name,a=await(async e=>{const s=await fetch("https://registry.npmjs.org/"+e+"/latest");return(await s.json()).version})(n),r=a.replace(/-rc.*/,""),l=i.split("."),p=a.split(".");l[0]!==p[0]&&console.warn(`The package ${n} is out of date. The latest version is ${r}. Please update.`)};export{o as c}
1
+ import{p as e}from"./p-DmrfgGzv.js";const s="__JUSTIFI_WC_VERSION__",o=async()=>{var o,t;if((()=>{if("undefined"==typeof globalThis)return;const o=e.version,t=globalThis[s];t&&t!==o?console.error(`@justifi/webcomponents: Multiple versions detected. Version ${t} was loaded first and registered all components. Version ${o} is also present but its components will NOT be used. To fix this, add to your package.json:\n"pnpm": { "overrides": { "@justifi/webcomponents": "${o}" } }`):globalThis[s]=o})(),"undefined"!=typeof process&&("test"===(null===(o=process.env)||void 0===o?void 0:o.NODE_ENV)||(null===(t=process.env)||void 0===t?void 0:t.JEST_WORKER_ID)))return;const i=e.version,n=e.name,a=await(async e=>{const s=await fetch("https://registry.npmjs.org/"+e+"/latest");return(await s.json()).version})(n),r=a.replace(/-rc.*/,""),l=i.split("."),p=a.split(".");l[0]!==p[0]&&console.warn(`The package ${n} is out of date. The latest version is ${r}. Please update.`)};export{o as c}
@@ -1 +1 @@
1
- import{A as e}from"./p-B2CETB_i.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const t=e();class s{async fetchDispute(e,s){return t.get({endpoint:`disputes/${e}`,authToken:s})}async updateDisputeResponse(e,s,n){return t.patch({endpoint:`disputes/${e}/response`,body:n,authToken:s})}async submitDisputeResponse(e,s,n){return t.post({endpoint:`disputes/${e}/response`,body:n,authToken:s})}async createDisputeEvidence(e,s,n){return t.put({endpoint:`disputes/${e}/evidence`,body:n,authToken:s})}}var n,i;!function(e){e.nextStep="nextStep",e.previousStep="previousStep",e.cancelDispute="cancelDispute",e.respondToDispute="respondToDispute",e.submit="submit"}(n||(n={})),function(e){e.disputeReason="dispute_reason",e.productOrService="product_or_service",e.customerDetails="customer_details",e.cancellationPolicy="cancellation_policy",e.refundPolicy="refund_policy",e.duplicateCharge="duplicate_charge",e.electronicEvidence="electronic_evidence",e.shippingDetails="shipping_details",e.additionalStatement="additional_statement"}(i||(i={}));export{n as D,s as a}
1
+ import{A as e}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const t=e();class s{async fetchDispute(e,s){return t.get({endpoint:`disputes/${e}`,authToken:s})}async updateDisputeResponse(e,s,n){return t.patch({endpoint:`disputes/${e}/response`,body:n,authToken:s})}async submitDisputeResponse(e,s,n){return t.post({endpoint:`disputes/${e}/response`,body:n,authToken:s})}async createDisputeEvidence(e,s,n){return t.put({endpoint:`disputes/${e}/evidence`,body:n,authToken:s})}}var n,i;!function(e){e.nextStep="nextStep",e.previousStep="previousStep",e.cancelDispute="cancelDispute",e.respondToDispute="respondToDispute",e.submit="submit"}(n||(n={})),function(e){e.disputeReason="dispute_reason",e.productOrService="product_or_service",e.customerDetails="customer_details",e.cancellationPolicy="cancellation_policy",e.refundPolicy="refund_policy",e.duplicateCharge="duplicate_charge",e.electronicEvidence="electronic_evidence",e.shippingDetails="shipping_details",e.additionalStatement="additional_statement"}(i||(i={}));export{n as D,s as a}
@@ -0,0 +1 @@
1
+ var e={name:"@justifi/webcomponents",version:"6.14.1"};export{e as p}
@@ -1 +1 @@
1
- import{A as o}from"./p-B2CETB_i.js";import{S as r,C as s}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{g as t,a}from"./p-CXZRiaUw.js";const c=o();class n{async fetchSubAccounts(o,r,s){return c.get({authToken:r,endpoint:"sub_accounts",params:s,headers:{Account:o}})}}const e=({primaryAccountId:o,authToken:c,service:n})=>async({params:e,onSuccess:i,onError:p})=>{var u,m;try{const d=await n.fetchSubAccounts(o,c,e);if(d.error){return p({error:a(d.error),code:t(null===(m=d.error)||void 0===m?void 0:m.code),severity:s.ERROR})}{const o=Object.assign({},d.page_info);i({subAccounts:(null===(u=d.data)||void 0===u?void 0:u.map((o=>new r(o))))||[],pagingInfo:o})}}catch(o){const r=t(null==o?void 0:o.code);return p({error:o.message||o,code:r,severity:s.ERROR})}};export{n as S,e as m}
1
+ import{A as o}from"./p-ClGSzzda.js";import{S as r,C as s}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{g as t,a}from"./p-CXZRiaUw.js";const c=o();class n{async fetchSubAccounts(o,r,s){return c.get({authToken:r,endpoint:"sub_accounts",params:s,headers:{Account:o}})}}const e=({primaryAccountId:o,authToken:c,service:n})=>async({params:e,onSuccess:i,onError:p})=>{var u,m;try{const d=await n.fetchSubAccounts(o,c,e);if(d.error){return p({error:a(d.error),code:t(null===(m=d.error)||void 0===m?void 0:m.code),severity:s.ERROR})}{const o=Object.assign({},d.page_info);i({subAccounts:(null===(u=d.data)||void 0===u?void 0:u.map((o=>new r(o))))||[],pagingInfo:o})}}catch(o){const r=t(null==o?void 0:o.code);return p({error:o.message||o,code:r,severity:s.ERROR})}};export{n as S,e as m}
@@ -0,0 +1 @@
1
+ import{A as n}from"./p-ClGSzzda.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const t=n();class i{async getLinkToken(n,i,a,e){return t.post({endpoint:`plaid/${i}/link`,body:{checkout_id:a},authToken:n,signal:e})}async getLinkTokenForVerification(n,i,a){return t.post({endpoint:`entities/plaid/${i}/link_token`,body:{},authToken:n,signal:a})}async getBankAccountData(n,i,a){return t.get({endpoint:`entities/plaid/${i}/bank_account`,authToken:n,signal:a})}async postPlaidVerifiedBankAccountData(n,i,a,e){return t.post({endpoint:`entities/plaid/${i}/bank_account`,body:a,authToken:n,signal:e})}async tokenizeBankAccount(n,i,a,e,o,s){const c=`plaid/${i}/tokenize`,k={public_token:a};return e&&(k.link_token_id=e),o&&(k.payment_method_group_id=o),t.post({endpoint:c,body:k,authToken:n,signal:s})}}export{i as P}
@@ -0,0 +1 @@
1
+ import{h as s,r as t,c as i}from"./p-CV0Pyo1O.js";import{A as e}from"./p-ClGSzzda.js";import{C as r,b as o}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{g as a,a as n}from"./p-CXZRiaUw.js";import{J as c}from"./p-CGTKc-Ra.js";import{c as l}from"./p-CoY0w4be.js";import{c as h}from"./p-DyPk4BJt.js";import{p as d,f as p,r as u,i as v}from"./p-Ds_P-dB8.js";import{v as m,i as y,a as f,H as j}from"./p-C-Jgmek8.js";import{t as _,z as g}from"./p-CPKMvyV_.js";import{S as b}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{S as C}from"./p-uZ5KAseb.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-DmrfgGzv.js";import"./p-DkoufM1t.js";import"./p-HXpYMWUU.js";const k=e();class w{async fetchQuote(s,t){return k.post({endpoint:"insurance/quotes",body:t,authToken:s})}async toggleCoverage(s,t,i){return k.post({endpoint:`insurance/quotes/${t}/toggle`,body:i,authToken:s})}}const T=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(C,{width:"35%",height:"30px"})),s("div",{class:"col-12"},s(C,{width:"70%"})),s("div",{class:"col-12"},s(C,{width:"40%"})),s("div",{class:"col-12"},s(C,{width:"40%"})),s("div",{class:"col-12"},s(C,{width:"100%"})),s("div",{class:"col-12"},s(C,{width:"80%"}))),D=class{constructor(s){t(this,s),this.insuranceUpdated=i(this,"insurance-updated",7),this.errorEvent=i(this,"error-event",7),this.isLoading=!0}async validate(){return m()}processHTMLContent(s){return d(s,[s=>u(s,"style"),s=>v(s,"a","part",_),s=>v(s,"p","part",_)])}componentWillLoad(){l(),this.analytics=new c(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 w};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(b,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:_,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:g},"Please select an option"),s("small",{part:_,innerHTML:null===(r=this.quote)||void 0===r?void 0:r.product.legal_disclaimer})))}};export{D as justifi_season_interruption_insurance}
@@ -0,0 +1 @@
1
+ import{r as i,h as o}from"./p-CV0Pyo1O.js";import{J as s}from"./p-CGTKc-Ra.js";import{c as r}from"./p-CoY0w4be.js";import{w as t}from"./p-DVJaoI_m.js";import{S as a}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-D8GTwl9v.js";const p=class{constructor(o){i(this,o)}async componentWillLoad(){await t(),r(),this.analytics=new s(this)}disconnectedCallback(){var i;null===(i=this.analytics)||void 0===i||i.cleanup()}async getValues(){var i,o;return null!==(o=null===(i=this.bankAccountBillingFormSimpleRef)||void 0===i?void 0:i.getValues())&&void 0!==o?o:{}}async validate(){var i,o;return null!==(o=null===(i=this.bankAccountBillingFormSimpleRef)||void 0===i?void 0:i.validate())&&void 0!==o?o:{isValid:!1,errors:{}}}render(){return o(a,{key:"669227ed02e4f0791882b95ed814ea1865db80de"},o("bank-account-billing-form-simple",{key:"97cbe9637d8969023b1f7d3a6b3091a246112032",legend:this.legend,ref:i=>this.bankAccountBillingFormSimpleRef=i}))}};export{p as justifi_bank_account_billing_form_simple}
@@ -1 +1 @@
1
- import{h as t,r as i}from"./p-CV0Pyo1O.js";import{S as s}from"./p-uZ5KAseb.js";import{w as e,c as a}from"./p-DVJaoI_m.js";import{e as r}from"./p-Ds_P-dB8.js";import{c as o}from"./p-HtdZEF57.js";import{c as n}from"./p-DyPk4BJt.js";import"./p-CPKMvyV_.js";import"./p-D8GTwl9v.js";import"./p-HXpYMWUU.js";import"./p-Dwe9A9Fk.js";import"./p-DkoufM1t.js";const c=i=>{const{isReady:e}=i;return e?null:t("div",{class:"container-fluid p-0"},t("div",{class:"row mb-3"},t("div",{class:"col-12 align-content-end"},t(s,{height:"18px",width:"120px"}),t(s,{height:"36px"}))),t("div",{class:"row"},t("div",{class:"col-12 align-content-end"},t(s,{height:"18px",width:"110px"}),t(s,{height:"36px"}))))},h=class{constructor(t){i(this,t),this.isReady=!1,this.hasLoggedAchDisabledWarning=!1}async componentWillLoad(){await e(),this.iframeOrigin=a.iframeOrigin,this.tabId=r(),o()}componentDidRender(){if(this.isAchDisabledForCheckout())return;const t=[this.accountNumberIframeElement,this.routingNumberIframeElement];t.every(Boolean)&&Promise.all(t.map((t=>new Promise((i=>{t.addEventListener("iframeLoaded",(()=>{i()}))}))))).then((()=>{this.isReady=!0}))}isAchDisabledForCheckout(){return n.checkoutLoaded&&!n.achPaymentsEnabled}async validate(){if(this.isAchDisabledForCheckout())return!1;const t=await this.accountNumberIframeElement.validate(),i=await this.routingNumberIframeElement.validate();return t&&i}async tokenize({clientId:t,paymentMethodMetadata:i,account:s}){return this.isAchDisabledForCheckout()?{error:{message:"ACH payments are disabled for this checkout (payment_settings.ach_payments=false)."}}:await this.accountNumberIframeElement.tokenize(t,i,s)}render(){return this.isAchDisabledForCheckout()?(this.hasLoggedAchDisabledWarning||(console.warn("[bank-account-form] ACH payments are disabled for this checkout (payment_settings.ach_payments=false)."),this.hasLoggedAchDisabledWarning=!0),null):t("div",null,t(c,{isReady:this.isReady}),t("hidden-input",null),t("div",{class:"container-fluid p-0",style:{opacity:this.isReady?"1":"0",height:this.isReady?"auto":"0"}},t("div",{class:"row mb-3"},t("iframe-input",{inputId:"accountNumber",ref:t=>this.accountNumberIframeElement=t,label:"Account Number",iframeOrigin:`${this.iframeOrigin}/v2/accountNumber?tabId=${this.tabId}`})),t("div",{class:"row"},t("iframe-input",{inputId:"routingNumber",ref:t=>this.routingNumberIframeElement=t,label:"Routing Number",iframeOrigin:`${this.iframeOrigin}/v2/routingNumber?tabId=${this.tabId}`}))))}};export{h as bank_account_form}
1
+ import{h as t,r as i}from"./p-CV0Pyo1O.js";import{S as s}from"./p-uZ5KAseb.js";import{w as e,c as a}from"./p-DVJaoI_m.js";import{e as r}from"./p-Ds_P-dB8.js";import{c as o}from"./p-CoY0w4be.js";import{c as n}from"./p-DyPk4BJt.js";import"./p-CPKMvyV_.js";import"./p-D8GTwl9v.js";import"./p-HXpYMWUU.js";import"./p-DmrfgGzv.js";import"./p-DkoufM1t.js";const c=i=>{const{isReady:e}=i;return e?null:t("div",{class:"container-fluid p-0"},t("div",{class:"row mb-3"},t("div",{class:"col-12 align-content-end"},t(s,{height:"18px",width:"120px"}),t(s,{height:"36px"}))),t("div",{class:"row"},t("div",{class:"col-12 align-content-end"},t(s,{height:"18px",width:"110px"}),t(s,{height:"36px"}))))},h=class{constructor(t){i(this,t),this.isReady=!1,this.hasLoggedAchDisabledWarning=!1}async componentWillLoad(){await e(),this.iframeOrigin=a.iframeOrigin,this.tabId=r(),o()}componentDidRender(){if(this.isAchDisabledForCheckout())return;const t=[this.accountNumberIframeElement,this.routingNumberIframeElement];t.every(Boolean)&&Promise.all(t.map((t=>new Promise((i=>{t.addEventListener("iframeLoaded",(()=>{i()}))}))))).then((()=>{this.isReady=!0}))}isAchDisabledForCheckout(){return n.checkoutLoaded&&!n.achPaymentsEnabled}async validate(){if(this.isAchDisabledForCheckout())return!1;const t=await this.accountNumberIframeElement.validate(),i=await this.routingNumberIframeElement.validate();return t&&i}async tokenize({clientId:t,paymentMethodMetadata:i,account:s}){return this.isAchDisabledForCheckout()?{error:{message:"ACH payments are disabled for this checkout (payment_settings.ach_payments=false)."}}:await this.accountNumberIframeElement.tokenize(t,i,s)}render(){return this.isAchDisabledForCheckout()?(this.hasLoggedAchDisabledWarning||(console.warn("[bank-account-form] ACH payments are disabled for this checkout (payment_settings.ach_payments=false)."),this.hasLoggedAchDisabledWarning=!0),null):t("div",null,t(c,{isReady:this.isReady}),t("hidden-input",null),t("div",{class:"container-fluid p-0",style:{opacity:this.isReady?"1":"0",height:this.isReady?"auto":"0"}},t("div",{class:"row mb-3"},t("iframe-input",{inputId:"accountNumber",ref:t=>this.accountNumberIframeElement=t,label:"Account Number",iframeOrigin:`${this.iframeOrigin}/v2/accountNumber?tabId=${this.tabId}`})),t("div",{class:"row"},t("iframe-input",{inputId:"routingNumber",ref:t=>this.routingNumberIframeElement=t,label:"Routing Number",iframeOrigin:`${this.iframeOrigin}/v2/routingNumber?tabId=${this.tabId}`}))))}};export{h as bank_account_form}
@@ -1 +1 @@
1
- import{h as t,r as e,c as s}from"./p-CV0Pyo1O.js";import{c as r,a as i,F as n}from"./p-D9sqTVmd.js";import{f as o}from"./p-Ds_P-dB8.js";import"./p-DVJaoI_m.js";import{R as a,C as u,b as h,q as l}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{B as c}from"./p-CHo7TfsM.js";import{S as d}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{P as m}from"./p-DM45Ihwj.js";import{m as p}from"./p-rpFC83GL.js";import{J as f}from"./p-B5RnJXKG.js";import{c as v}from"./p-HtdZEF57.js";import{g as y,a as j}from"./p-CXZRiaUw.js";import{A as w}from"./p-B2CETB_i.js";import{S as b}from"./p-uZ5KAseb.js";import"./p-BFTU3MAI.js";import"./p-HXpYMWUU.js";import"./p-D8GTwl9v.js";import"./p-CPKMvyV_.js";import"./p-Dwe9A9Fk.js";const T=t=>{const e=+t;return i().required("Amount is required").test("max-amount",`Refund amount cannot be more than payment amount: ${o(e)}`,(function(t){return+t<=+e})).test("min-amount","Refund amount must be greater than 0",(function(t){return+t>0}))},C=t=>{if(t)return r({amount:T(t),description:i().optional(),reason:i().optional().oneOf([a.customerRequest,a.duplicate,a.fraudulent],"Select a reason")})},A=[{label:"Select a reason",value:""},{label:"Customer requested a refund",value:"customer_request"},{label:"Customer was double-charged",value:"duplicate"},{label:"Payment was reported as fraud",value:"fraudulent"}],I=w();class g{async postRefund(t,e,s,r){return I.post({endpoint:`payments/${t}/refunds`,headers:{"Sub-Account":e},body:r,authToken:s})}}const R=w();class k{async postVoid(t,e,s){return R.post({endpoint:`payments/${t}/void`,headers:{"Sub-Account":e},authToken:s})}}const P=()=>t("div",{class:"row gap-3"},t("div",{class:"col-12"},t(b,{width:"100%",height:"40px"}))),S=()=>t(d,null,t("div",{class:"row gap-5"},t(P,null),t(P,null),t(P,null))),x=class{constructor(t){e(this,t),this.errorEvent=s(this,"error-event",7),this.submitEvent=s(this,"submit-event",7),this.refundPayload={},this.displayAmount="",this.errors={},this.paymentLoading=!0,this.refundLoading=!1,this.hideSubmitButton=!1,this.inputHandler=(t,e)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[t]:e}))}}componentWillLoad(){v(),this.analytics=new f(this),this.initializeApi(),this.formController=new n(C())}handleError(t,e,s){this.errorEvent.emit({errorCode:t,message:e,severity:s})}checkAmount(t){return t>0}handleInvalidAmount(){this.submitDisabled=!0,this.handleError(h.INVALID_REFUND_AMOUNT,"Refund amount must be greater than 0",u.ERROR)}isPaymentCreatedWithin25Minutes(){var t;if(!this.payment||!(null===(t=this.payment)||void 0===t?void 0:t.created_at))return!1;const e=new Date(this.payment.created_at);return((new Date).getTime()-e.getTime())/6e4<=25}initializeFormController(){const t=this.refundPayload.amount,e=t?t.toString():"0";this.formController=new n(C(e)),this.formController.setInitialValues({amount:e}),this.formController.values.subscribe((t=>{this.refundPayload=Object.assign({},t)})),this.formController.errors.subscribe((t=>{this.errors=Object.assign({},t)}))}initializeApi(){this.paymentId&&this.authToken?p({id:this.paymentId,authToken:this.authToken,service:new m})({onSuccess:({payment:t})=>{this.payment=t,this.refundPayload=new l({amount:t.amount_refundable})},onError:({error:t,code:e,severity:s})=>{this.handleError(e,t,s)},final:()=>{this.checkAmount(this.refundPayload.amount)?this.initializeFormController():this.handleInvalidAmount(),this.paymentLoading=!1}}):this.handleError(h.MISSING_PROPS,"Payment ID and Auth Token are required",u.ERROR)}async refundPayment(t){if(t&&t.preventDefault(),!await this.formController.validate())return;const e=this.formController.values.getValue();return this.refundLoading=!0,this.isPaymentCreatedWithin25Minutes()?this.tryVoidPayment():this.processRefund(e)}async tryVoidPayment(){const t=(({authToken:t,accountId:e,paymentId:s,service:r})=>async({onSuccess:i,onError:n,final:o})=>{var a;try{const o=await r.postVoid(s,e,t);if(o.error)return n({error:j(o.error),code:y(null===(a=o.error)||void 0===a?void 0:a.code),severity:u.ERROR});i(o)}catch(t){const e=y(null==t?void 0:t.code);return n({error:t.message||t,code:e,severity:u.ERROR})}finally{o()}})({authToken:this.authToken,accountId:this.accountId,paymentId:this.paymentId,service:new k});return new Promise((e=>{let s,r=!1;const i=this.formController.values.getValue();t({onSuccess:t=>{s=t,r=!0},onError:({error:t,code:s,severity:n})=>{r=!0,this.handleError(t,s,n),this.processRefund(i).then(e)},final:()=>{s&&!s.error&&r&&(this.submitEvent.emit({response:s}),this.submitDisabled=!0,this.refundLoading=!1,e(s.data))}})}))}async processRefund(t){const e=(({authToken:t,accountId:e,paymentId:s,service:r})=>async({refundBody:i,onSuccess:n,onError:o,final:a})=>{var h;try{const a=await r.postRefund(s,e,t,i);if(a.error)return o({error:j(a.error),code:y(null===(h=a.error)||void 0===h?void 0:h.code),severity:u.ERROR});n(a)}catch(t){const e=y(null==t?void 0:t.code);return o({error:t.message||t,code:e,severity:u.ERROR})}finally{a()}})({authToken:this.authToken,accountId:this.accountId,paymentId:this.paymentId,service:new g});return new Promise((s=>{let r;e({refundBody:t,onSuccess:t=>{r=t},onError:({error:t,code:e,severity:s})=>{r=t,this.handleError(t,e,s)},final:()=>{this.submitEvent.emit({response:r}),this.submitDisabled=!0,this.refundLoading=!1,s(r.data)}})}))}render(){if(this.paymentLoading)return t(S,null);const e=this.formController.getInitialValues(),s=this.refundPayload.amount;return t(d,null,t("form",null,t("fieldset",null,t("div",{class:"row gy-3"},t("div",{class:"col-12"},t("form-control-monetary",{name:"amount",label:"Refund Amount",defaultValue:e.amount,inputHandler:this.inputHandler,errorText:this.errors.amount})),t("div",{class:"col-12"},t("form-control-select",{name:"reason",label:"Reason for refund (optional)",defaultValue:e.reason,inputHandler:this.inputHandler,options:A,errorText:this.errors.reason})),t("div",{class:"col-12"},t("form-control-textarea",{name:"description",label:"Note (optional)",defaultValue:e.description,inputHandler:this.inputHandler,maxLength:250,errorText:this.errors.description})),t("div",{class:"form-group d-flex flex-row-reverse"},t(c,{variant:"primary",type:"submit",onClick:this.refundPayment.bind(this),isLoading:this.paymentLoading||this.refundLoading,hidden:this.hideSubmitButton,disabled:this.submitDisabled},`Refund ${o(+s)}`))))))}};export{x as justifi_refund_payment}
1
+ import{h as t,r as e,c as s}from"./p-CV0Pyo1O.js";import{c as r,a as i,F as n}from"./p-D9sqTVmd.js";import{f as o}from"./p-Ds_P-dB8.js";import"./p-DVJaoI_m.js";import{R as a,C as u,b as h,q as l}from"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{B as c}from"./p-CHo7TfsM.js";import{S as d}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{P as m}from"./p-B9a-6Pn9.js";import{m as p}from"./p-rpFC83GL.js";import{J as f}from"./p-CGTKc-Ra.js";import{c as v}from"./p-CoY0w4be.js";import{g as y,a as j}from"./p-CXZRiaUw.js";import{A as b}from"./p-ClGSzzda.js";import{S as w}from"./p-uZ5KAseb.js";import"./p-BFTU3MAI.js";import"./p-HXpYMWUU.js";import"./p-D8GTwl9v.js";import"./p-CPKMvyV_.js";import"./p-DmrfgGzv.js";const C=t=>{const e=+t;return i().required("Amount is required").test("max-amount",`Refund amount cannot be more than payment amount: ${o(e)}`,(function(t){return+t<=+e})).test("min-amount","Refund amount must be greater than 0",(function(t){return+t>0}))},T=t=>{if(t)return r({amount:C(t),description:i().optional(),reason:i().optional().oneOf([a.customerRequest,a.duplicate,a.fraudulent],"Select a reason")})},g=[{label:"Select a reason",value:""},{label:"Customer requested a refund",value:"customer_request"},{label:"Customer was double-charged",value:"duplicate"},{label:"Payment was reported as fraud",value:"fraudulent"}],A=b();class I{async postRefund(t,e,s,r){return A.post({endpoint:`payments/${t}/refunds`,headers:{"Sub-Account":e},body:r,authToken:s})}}const P=b();class R{async postVoid(t,e,s){return P.post({endpoint:`payments/${t}/void`,headers:{"Sub-Account":e},authToken:s})}}const S=()=>t("div",{class:"row gap-3"},t("div",{class:"col-12"},t(w,{width:"100%",height:"40px"}))),k=()=>t(d,null,t("div",{class:"row gap-5"},t(S,null),t(S,null),t(S,null))),x=class{constructor(t){e(this,t),this.errorEvent=s(this,"error-event",7),this.submitEvent=s(this,"submit-event",7),this.refundPayload={},this.displayAmount="",this.errors={},this.paymentLoading=!0,this.refundLoading=!1,this.hideSubmitButton=!1,this.inputHandler=(t,e)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[t]:e}))}}componentWillLoad(){v(),this.analytics=new f(this),this.initializeApi(),this.formController=new n(T())}handleError(t,e,s){this.errorEvent.emit({errorCode:t,message:e,severity:s})}checkAmount(t){return t>0}handleInvalidAmount(){this.submitDisabled=!0,this.handleError(h.INVALID_REFUND_AMOUNT,"Refund amount must be greater than 0",u.ERROR)}isPaymentCreatedWithin25Minutes(){var t;if(!this.payment||!(null===(t=this.payment)||void 0===t?void 0:t.created_at))return!1;const e=new Date(this.payment.created_at);return((new Date).getTime()-e.getTime())/6e4<=25}initializeFormController(){const t=this.refundPayload.amount,e=t?t.toString():"0";this.formController=new n(T(e)),this.formController.setInitialValues({amount:e}),this.formController.values.subscribe((t=>{this.refundPayload=Object.assign({},t)})),this.formController.errors.subscribe((t=>{this.errors=Object.assign({},t)}))}initializeApi(){this.paymentId&&this.authToken?p({id:this.paymentId,authToken:this.authToken,service:new m})({onSuccess:({payment:t})=>{this.payment=t,this.refundPayload=new l({amount:t.amount_refundable})},onError:({error:t,code:e,severity:s})=>{this.handleError(e,t,s)},final:()=>{this.checkAmount(this.refundPayload.amount)?this.initializeFormController():this.handleInvalidAmount(),this.paymentLoading=!1}}):this.handleError(h.MISSING_PROPS,"Payment ID and Auth Token are required",u.ERROR)}async refundPayment(t){if(t&&t.preventDefault(),!await this.formController.validate())return;const e=this.formController.values.getValue();return this.refundLoading=!0,this.isPaymentCreatedWithin25Minutes()?this.tryVoidPayment():this.processRefund(e)}async tryVoidPayment(){const t=(({authToken:t,accountId:e,paymentId:s,service:r})=>async({onSuccess:i,onError:n,final:o})=>{var a;try{const o=await r.postVoid(s,e,t);if(o.error)return n({error:j(o.error),code:y(null===(a=o.error)||void 0===a?void 0:a.code),severity:u.ERROR});i(o)}catch(t){const e=y(null==t?void 0:t.code);return n({error:t.message||t,code:e,severity:u.ERROR})}finally{o()}})({authToken:this.authToken,accountId:this.accountId,paymentId:this.paymentId,service:new R});return new Promise((e=>{let s,r=!1;const i=this.formController.values.getValue();t({onSuccess:t=>{s=t,r=!0},onError:({error:t,code:s,severity:n})=>{r=!0,this.handleError(t,s,n),this.processRefund(i).then(e)},final:()=>{s&&!s.error&&r&&(this.submitEvent.emit({response:s}),this.submitDisabled=!0,this.refundLoading=!1,e(s.data))}})}))}async processRefund(t){const e=(({authToken:t,accountId:e,paymentId:s,service:r})=>async({refundBody:i,onSuccess:n,onError:o,final:a})=>{var h;try{const a=await r.postRefund(s,e,t,i);if(a.error)return o({error:j(a.error),code:y(null===(h=a.error)||void 0===h?void 0:h.code),severity:u.ERROR});n(a)}catch(t){const e=y(null==t?void 0:t.code);return o({error:t.message||t,code:e,severity:u.ERROR})}finally{a()}})({authToken:this.authToken,accountId:this.accountId,paymentId:this.paymentId,service:new I});return new Promise((s=>{let r;e({refundBody:t,onSuccess:t=>{r=t},onError:({error:t,code:e,severity:s})=>{r=t,this.handleError(t,e,s)},final:()=>{this.submitEvent.emit({response:r}),this.submitDisabled=!0,this.refundLoading=!1,s(r.data)}})}))}render(){if(this.paymentLoading)return t(k,null);const e=this.formController.getInitialValues(),s=this.refundPayload.amount;return t(d,null,t("form",null,t("fieldset",null,t("div",{class:"row gy-3"},t("div",{class:"col-12"},t("form-control-monetary",{name:"amount",label:"Refund Amount",defaultValue:e.amount,inputHandler:this.inputHandler,errorText:this.errors.amount})),t("div",{class:"col-12"},t("form-control-select",{name:"reason",label:"Reason for refund (optional)",defaultValue:e.reason,inputHandler:this.inputHandler,options:g,errorText:this.errors.reason})),t("div",{class:"col-12"},t("form-control-textarea",{name:"description",label:"Note (optional)",defaultValue:e.description,inputHandler:this.inputHandler,maxLength:250,errorText:this.errors.description})),t("div",{class:"form-group d-flex flex-row-reverse"},t(c,{variant:"primary",type:"submit",onClick:this.refundPayment.bind(this),isLoading:this.paymentLoading||this.refundLoading,hidden:this.hideSubmitButton,disabled:this.submitDisabled},`Refund ${o(+s)}`))))))}};export{x as justifi_refund_payment}
@@ -1 +1 @@
1
- import{r as t,h as o}from"./p-CV0Pyo1O.js";import{c as a}from"./p-HtdZEF57.js";import{J as s}from"./p-B5RnJXKG.js";import{w as r}from"./p-DVJaoI_m.js";import{S as i}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-D8GTwl9v.js";const e=class{constructor(o){t(this,o)}async componentWillLoad(){await r(),a(),this.analytics=new s(this)}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){return!!this.bankAccountFormElement&&this.bankAccountFormElement.validate()}async tokenize({clientId:t,paymentMethodMetadata:o,account:a}){return this.bankAccountFormElement?this.bankAccountFormElement.tokenize({clientId:t,paymentMethodMetadata:o,account:a}):{error:{message:"Bank account form is not available."}}}render(){return o(i,{key:"3c8a48f6060f14433ae94399fc48097cb138e301"},o("bank-account-form",{key:"30cd40b60629f5c7f874194dd7641ee3737e8b69",ref:t=>this.bankAccountFormElement=t}))}};export{e as justifi_bank_account_form}
1
+ import{r as t,h as o}from"./p-CV0Pyo1O.js";import{c as a}from"./p-CoY0w4be.js";import{J as s}from"./p-CGTKc-Ra.js";import{w as r}from"./p-DVJaoI_m.js";import{S as e}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-Ds_P-dB8.js";import"./p-HXpYMWUU.js";import"./p-AyLerOda.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-D8GTwl9v.js";const i=class{constructor(o){t(this,o)}async componentWillLoad(){await r(),a(),this.analytics=new s(this)}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}async validate(){return!!this.bankAccountFormElement&&this.bankAccountFormElement.validate()}async tokenize({clientId:t,paymentMethodMetadata:o,account:a}){return this.bankAccountFormElement?this.bankAccountFormElement.tokenize({clientId:t,paymentMethodMetadata:o,account:a}):{error:{message:"Bank account form is not available."}}}render(){return o(e,{key:"3c8a48f6060f14433ae94399fc48097cb138e301"},o("bank-account-form",{key:"30cd40b60629f5c7f874194dd7641ee3737e8b69",ref:t=>this.bankAccountFormElement=t}))}};export{i as justifi_bank_account_form}
@@ -1 +1 @@
1
- import{h as i,r as s,c as t}from"./p-CV0Pyo1O.js";import{a9 as e,a8 as r,a1 as o,t as l}from"./p-CPKMvyV_.js";import{S as d}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{c as a}from"./p-HtdZEF57.js";import{J as n}from"./p-B5RnJXKG.js";import{o as h,C as c,p as v,f as u,b as p}from"./p-AyLerOda.js";import{B as m}from"./p-Cc6TzfDZ.js";import{B as f}from"./p-BcNb9bVO.js";import{m as w}from"./p-Dsm1jN-a.js";import{S as y}from"./p-uZ5KAseb.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import"./p-CLHwhyvu.js";import{g as b,a as x}from"./p-CXZRiaUw.js";import{T as g}from"./p-Bx1A5sQR.js";import{k as j}from"./p-Ds_P-dB8.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-D8GTwl9v.js";const k=()=>i("div",{class:"row gap-3"},i("div",{class:"col-12"},i(y,{width:"25%"})),i("div",{class:"col-12"},i(y,{width:"100%"})),i("div",{class:"col-12 d-flex gap-3"},i(y,{width:"50%"}),i(y,{width:"50%"})),i("div",{class:"col-12 d-flex gap-3"},i(y,{width:"65%"}),i(y,{width:"35%"}))),C=()=>i("div",{class:"row gap-5"},i("div",{class:"col-12"},i(y,{width:"40%",height:"40px"})),i(k,null)),S=()=>i("div",{class:"terminal-selector-skeleton mt-4 rounded shadow-sm"},i("div",{class:"d-flex align-items-center gap-3"},i(y,{width:"125px",height:"125px",styles:{borderRadius:"8px"}}),i("div",{class:"flex-grow-1"},i("div",{class:"d-flex row flex-row"},i("div",{class:"col-6 flex-column"},i(y,null),i(y,{width:"60%"})),i("div",{class:"d-flex justify-content-end align-items-center gap-2 col-6"},i(y,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}),i(y,{width:"80px",height:"32px"}),i(y,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}))),i("div",{class:"mt-4"},i("div",{class:"d-flex flex-column gap-2"},i(y,null),i(y,null)))))),T=class{constructor(i){s(this,i),this.errorEvent=t(this,"error-event",7),this.submitted=t(this,"submit-event",7),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 v({business_id:this.businessId,sub_account_id:this.accountId,order_type:this.shipping?u.boardingShipping:u.boardingOnly}),a(),this.analytics=new n(this),this.loadData()}disconnectedCallback(){var i;null===(i=this.analytics)||void 0===i||i.cleanup()}handleError(i,s,t){this.error={message:i,code:s,severity:t},this.errorEvent.emit({errorCode:s,message:i,severity:t})}loadData(){this.businessId&&this.authToken?(this.initializeGetBusiness(),this.initializeGetTerminalModels()):this.handleError("Invalid business id or auth token",p.MISSING_PROPS,c.ERROR)}initializeGetBusiness(){w({id:this.businessId,authToken:this.authToken,service:new m})({onSuccess:({business:i})=>{this.business=new f(i)},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t)},final:()=>{this.loading.business=!1}})}initializeGetTerminalModels(){(({id:i,authToken:s,service:t})=>async({onSuccess:e,onError:r})=>{var o,l,d,a;try{const n=await t.fetchTerminalModels(i,s);if(n.error)return r({error:x(n.error),code:b(null===(a=n.error)||void 0===a?void 0:a.code),severity:c.ERROR});e({terminals:(null===(l=null===(o=n.data)||void 0===o?void 0:o.terminal_order_models)||void 0===l?void 0:l.map((i=>new h(i))))||[],orderLimit:null===(d=n.data)||void 0===d?void 0:d.order_limit})}catch(i){const s=b(null==i?void 0:i.code);return r({error:i.message||i,code:s,severity:c.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new g})({onSuccess:({terminals:i,orderLimit:s})=>{this.terminalModels=i,this.orderLimit=s,this.loading.terminals=!1},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t),this.loading.terminals=!1}})}submitOrder(){const i=(({authToken:i,service:s,apiOrigin:t="https://wc-proxy.justifi.ai"})=>async({terminalOrder:e,onSuccess:r,onError:o})=>{var l;try{const d=await s.orderTerminals(i,e,t);if(d.error)return o({error:x(d.error),code:b(null===(l=d.error)||void 0===l?void 0:l.code),severity:c.ERROR});{const{data:i}=d;r({data:i})}}catch(i){const s=b(null==i?void 0:i.code);return o({error:i.message||i,code:s,severity:c.ERROR})}})({authToken:this.authToken,service:new g});this.submitting=!0,i({terminalOrder:this.order.payload,onSuccess:({data:i})=>{this.submitted.emit(i),this.submitting=!1},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t),this.submitting=!1}})}onSelectedQuantityChange(i){this.order.updateTerminal(i.detail.modelName,i.detail.quantity),this.totalQuantity=this.order.totalQuantity}renderLoading(){return i("div",null,this.loading.business&&i(C,null),this.loading.terminals&&i("div",{class:"mt-5"},i(S,null),i(S,null),i(S,null)))}renderBusinessDetails(){var s,t,o,l,d,a,n,h;if(!this.loading.business&&this.business)return i("div",{class:"d-flex flex-column gap-4 mb-5 pt-5"},i("div",{class:"row"},i("div",{class:"col-12"},i("h2",{part:r},this.business.legal_name))),i("div",{class:"row"},i("div",{class:"col-6"},i("h5",{part:e},"Representative:"),i("div",null,i("div",null,null===(t=null===(s=this.business)||void 0===s?void 0:s.representative)||void 0===t?void 0:t.name),i("div",null,null===(l=null===(o=this.business)||void 0===o?void 0:o.representative)||void 0===l?void 0:l.title),i("div",null,null===(a=null===(d=this.business)||void 0===d?void 0:d.representative)||void 0===a?void 0:a.email),i("div",null,j(null===(h=null===(n=this.business)||void 0===n?void 0:n.representative)||void 0===h?void 0:h.phone)))),i("div",{class:"col-6"},i("h5",{part:e},this.shipping?"Shipping Address:":"Business Address:"),i("div",null,this.business.legal_address.line1,this.business.legal_address.line2?`, ${this.business.legal_address.line2}`:"",i("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 i("div",{class:"d-flex flex-column gap-2 mt-5"},this.terminalModels.map((s=>i("terminal-quantity-selector",{modelName:s.model_name,description:s.description,imageUrl:s.image_url,helpUrl:s.help_url,limit:this.orderLimit-this.order.totalQuantity,onSelectedQuantityChange:this.onSelectedQuantityChange.bind(this)}))))}renderOrderSection(){return i("div",{class:"mt-3"},i("div",{class:"text-end"},"Order limit: ",this.orderLimit),i("div",{class:"d-flex justify-content-end mt-3"},i("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 i(d,{key:"1fd8c50ac4e22bb2aac46ed0379f4740737e9760"},i("div",{key:"caed839c05af25c7bcd6599c45cd5058491a1ba9",part:l},this.renderLoading(),this.renderBusinessDetails(),this.renderTerminals(),this.renderOrderSection()))}};export{T as justifi_order_terminals}
1
+ import{h as i,r as s,c as t}from"./p-CV0Pyo1O.js";import{a9 as e,a8 as r,a1 as o,t as l}from"./p-CPKMvyV_.js";import{S as d}from"./p-DzEdYT8R.js";import"./p-CZfYo5-1.js";import{c as a}from"./p-CoY0w4be.js";import{J as n}from"./p-CGTKc-Ra.js";import{o as h,C as c,p as v,f as u,b as p}from"./p-AyLerOda.js";import{B as m}from"./p-CiIGpNnJ.js";import{B as f}from"./p-BcNb9bVO.js";import{m as w}from"./p-Dsm1jN-a.js";import{S as b}from"./p-uZ5KAseb.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import"./p-CLHwhyvu.js";import{g as y,a as g}from"./p-CXZRiaUw.js";import{T as x}from"./p-BJIJZgZH.js";import{k as j}from"./p-Ds_P-dB8.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-D8GTwl9v.js";const C=()=>i("div",{class:"row gap-3"},i("div",{class:"col-12"},i(b,{width:"25%"})),i("div",{class:"col-12"},i(b,{width:"100%"})),i("div",{class:"col-12 d-flex gap-3"},i(b,{width:"50%"}),i(b,{width:"50%"})),i("div",{class:"col-12 d-flex gap-3"},i(b,{width:"65%"}),i(b,{width:"35%"}))),S=()=>i("div",{class:"row gap-5"},i("div",{class:"col-12"},i(b,{width:"40%",height:"40px"})),i(C,null)),k=()=>i("div",{class:"terminal-selector-skeleton mt-4 rounded shadow-sm"},i("div",{class:"d-flex align-items-center gap-3"},i(b,{width:"125px",height:"125px",styles:{borderRadius:"8px"}}),i("div",{class:"flex-grow-1"},i("div",{class:"d-flex row flex-row"},i("div",{class:"col-6 flex-column"},i(b,null),i(b,{width:"60%"})),i("div",{class:"d-flex justify-content-end align-items-center gap-2 col-6"},i(b,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}),i(b,{width:"80px",height:"32px"}),i(b,{width:"32px",height:"32px",styles:{borderRadius:"50%"}}))),i("div",{class:"mt-4"},i("div",{class:"d-flex flex-column gap-2"},i(b,null),i(b,null)))))),T=class{constructor(i){s(this,i),this.errorEvent=t(this,"error-event",7),this.submitted=t(this,"submit-event",7),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 v({business_id:this.businessId,sub_account_id:this.accountId,order_type:this.shipping?u.boardingShipping:u.boardingOnly}),a(),this.analytics=new n(this),this.loadData()}disconnectedCallback(){var i;null===(i=this.analytics)||void 0===i||i.cleanup()}handleError(i,s,t){this.error={message:i,code:s,severity:t},this.errorEvent.emit({errorCode:s,message:i,severity:t})}loadData(){this.businessId&&this.authToken?(this.initializeGetBusiness(),this.initializeGetTerminalModels()):this.handleError("Invalid business id or auth token",p.MISSING_PROPS,c.ERROR)}initializeGetBusiness(){w({id:this.businessId,authToken:this.authToken,service:new m})({onSuccess:({business:i})=>{this.business=new f(i)},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t)},final:()=>{this.loading.business=!1}})}initializeGetTerminalModels(){(({id:i,authToken:s,service:t})=>async({onSuccess:e,onError:r})=>{var o,l,d,a;try{const n=await t.fetchTerminalModels(i,s);if(n.error)return r({error:g(n.error),code:y(null===(a=n.error)||void 0===a?void 0:a.code),severity:c.ERROR});e({terminals:(null===(l=null===(o=n.data)||void 0===o?void 0:o.terminal_order_models)||void 0===l?void 0:l.map((i=>new h(i))))||[],orderLimit:null===(d=n.data)||void 0===d?void 0:d.order_limit})}catch(i){const s=y(null==i?void 0:i.code);return r({error:i.message||i,code:s,severity:c.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new x})({onSuccess:({terminals:i,orderLimit:s})=>{this.terminalModels=i,this.orderLimit=s,this.loading.terminals=!1},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t),this.loading.terminals=!1}})}submitOrder(){const i=(({authToken:i,service:s,apiOrigin:t="https://wc-proxy.justifi.ai"})=>async({terminalOrder:e,onSuccess:r,onError:o})=>{var l;try{const d=await s.orderTerminals(i,e,t);if(d.error)return o({error:g(d.error),code:y(null===(l=d.error)||void 0===l?void 0:l.code),severity:c.ERROR});{const{data:i}=d;r({data:i})}}catch(i){const s=y(null==i?void 0:i.code);return o({error:i.message||i,code:s,severity:c.ERROR})}})({authToken:this.authToken,service:new x});this.submitting=!0,i({terminalOrder:this.order.payload,onSuccess:({data:i})=>{this.submitted.emit(i),this.submitting=!1},onError:({error:i,code:s,severity:t})=>{this.handleError(i,s,t),this.submitting=!1}})}onSelectedQuantityChange(i){this.order.updateTerminal(i.detail.modelName,i.detail.quantity),this.totalQuantity=this.order.totalQuantity}renderLoading(){return i("div",null,this.loading.business&&i(S,null),this.loading.terminals&&i("div",{class:"mt-5"},i(k,null),i(k,null),i(k,null)))}renderBusinessDetails(){var s,t,o,l,d,a,n,h;if(!this.loading.business&&this.business)return i("div",{class:"d-flex flex-column gap-4 mb-5 pt-5"},i("div",{class:"row"},i("div",{class:"col-12"},i("h2",{part:r},this.business.legal_name))),i("div",{class:"row"},i("div",{class:"col-6"},i("h5",{part:e},"Representative:"),i("div",null,i("div",null,null===(t=null===(s=this.business)||void 0===s?void 0:s.representative)||void 0===t?void 0:t.name),i("div",null,null===(l=null===(o=this.business)||void 0===o?void 0:o.representative)||void 0===l?void 0:l.title),i("div",null,null===(a=null===(d=this.business)||void 0===d?void 0:d.representative)||void 0===a?void 0:a.email),i("div",null,j(null===(h=null===(n=this.business)||void 0===n?void 0:n.representative)||void 0===h?void 0:h.phone)))),i("div",{class:"col-6"},i("h5",{part:e},this.shipping?"Shipping Address:":"Business Address:"),i("div",null,this.business.legal_address.line1,this.business.legal_address.line2?`, ${this.business.legal_address.line2}`:"",i("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 i("div",{class:"d-flex flex-column gap-2 mt-5"},this.terminalModels.map((s=>i("terminal-quantity-selector",{modelName:s.model_name,description:s.description,imageUrl:s.image_url,helpUrl:s.help_url,limit:this.orderLimit-this.order.totalQuantity,onSelectedQuantityChange:this.onSelectedQuantityChange.bind(this)}))))}renderOrderSection(){return i("div",{class:"mt-3"},i("div",{class:"text-end"},"Order limit: ",this.orderLimit),i("div",{class:"d-flex justify-content-end mt-3"},i("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 i(d,{key:"1fd8c50ac4e22bb2aac46ed0379f4740737e9760"},i("div",{key:"caed839c05af25c7bcd6599c45cd5058491a1ba9",part:l},this.renderLoading(),this.renderBusinessDetails(),this.renderTerminals(),this.renderOrderSection()))}};export{T as justifi_order_terminals}
@@ -1 +1 @@
1
- import{r as e,c as t,h as s}from"./p-CV0Pyo1O.js";import{f as i}from"./p-Ds_P-dB8.js";import{t as a,a8 as r}from"./p-CPKMvyV_.js";import{B as d}from"./p-CHo7TfsM.js";import{S as c}from"./p-uZ5KAseb.js";import"./p-CZfYo5-1.js";import{C as o,b as n}from"./p-AyLerOda.js";import{g as h,a as p}from"./p-CXZRiaUw.js";import{D as f,a as l}from"./p-aBD3IP5P.js";import{c as b}from"./p-HtdZEF57.js";import{J as u}from"./p-B5RnJXKG.js";import"./p-HXpYMWUU.js";import"./p-B2CETB_i.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import"./p-Dwe9A9Fk.js";const y=({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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR})}a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{d()}},v=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.submitEvent=t(this,"submit-event",7)}acceptDispute(){y({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:f.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,o,n,h,p,f,l,b;return s("div",{key:"325018c414e82b5c1bc7d9c5aa444b5a9d4e83d6",class:"dispute-notification-root"},this.isLoading&&s("div",{key:"deffb8ef248e32962aca084a564e83aa5f222b0a",style:{marginBottom:"8px"}},s(c,{key:"6f6c630b3122b1b2fd480470f5df7683f19de612",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(c,{key:"11f46711fed1094496c64551f084351c08f598be",height:"18px",styles:{marginBottom:"8px"}}),s(c,{key:"fc7e2eac76e1cbc329147f3da39a8c28c51a7b6a",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&this.isDueDatePassed()&&s("div",{key:"0ef159acf9fe5b12dc0dcddab6b7583e5fc9a799",part:a},s("h1",{key:"db263006990c5b4cf178f7f81650ad7602765532",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:"185c6f952ef46e3aec625cab73c943b3046ef6b4"},"You can no longer submit evidence to counter this dispute.")),(null===(o=this.dispute)||void 0===o?void 0:o.needsResponse)&&!this.isDueDatePassed()&&s("div",{key:"d4536104addc500277fbde990b7b33ba8ff54c7e",part:a},s("h1",{key:"198138cc6541c0aeeae458e2de1e3ae0c695328d",class:"h4",part:r},"This payment is disputed"),s("p",{key:"6902ce5e3e94ab7f71ee6d0c6a7604ef97f0e740"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"f49d1ac855365480edc61e0af117230e2f3dbe1f",class:"h5"},"Dispute details"),s("div",{key:"f3868a098dbc4a613d676b8580c053527f9d5fad",class:"d-table gap-2"},s("div",{key:"7699bc619b652ffe1c77cf6e5e0dac967679b1e6",class:"d-table-row gap-2"},s("span",{key:"9de67b45877120f54f724f1efe7b3f4d4b035d30",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"bfd79f86b5b81daf2a34f5874fcff03a05d1e64d",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(n=this.dispute)||void 0===n?void 0:n.amount))),s("div",{key:"0e57d56172859eb5857a1930cb837569157026d9",class:"d-table-row gap-2"},s("span",{key:"0b615bd8f9a9add7d18d50be4f4f644707576de2",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"46288c67be32fe2d95fea88f5b0148f22552a2c9",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(h=this.dispute)||void 0===h?void 0:h.reason)),s("div",{key:"c68280b0f36280804fb6231236d942174c189456",class:"d-table-row gap-2"},s("span",{key:"ed3f145aa0f2c949b80d7033e4ecb818a4a4fa68",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Due Date"),s("span",{key:"4c4530acbc570fb13b5f53947714bd250ff99cab",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(p=this.dispute)||void 0===p?void 0:p.due_date))),s("div",{key:"3244bb6bdbed2b4e28c479c2d4db2d0ae152f2f0",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"3716a28cec93e70690ad96bfc0c5f3b7b56f8ecb",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"7f326ed6f298c9f1091b160c63e386864329190e",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(f=this.dispute)||void 0===f?void 0:f.underReview)&&s("div",{key:"d705ae48c1f30b904ac31bbdbab9e955868f51e1",part:a},s("h1",{key:"712cebef3699a8c2a97bcb69ae68e0b491090c88",class:"h4",part:r},"This payment is disputed and under review"),s("p",{key:"ca95b2c8bdc6083a3fbb1dd63c6bdaa4699ae2a7"},"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:"c0cb4c8342aa4f022d76e95123a047b7b707f562",part:a},s("h1",{key:"797966d237d4b46eb1b880deb7fa21746f5b3b1e",class:"h4",part:r},"This payment was disputed"),s("p",{key:"2f9eed1a5f34f772206112488af22aa8b35c07b6"},"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:"9a90af51218ed921e27519363995f12e29713bfd",part:a},s("h1",{key:"736ee5cf8f65d780d4812e24ea9050dcc0d109a4",class:"h4",part:r},"This payment was disputed"),s("p",{key:"9ca83087b028e1078bcc2cd0b552e8f5379932d1"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},m=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.stepCompleteEvent=t(this,"complete-form-step-event",7),this.submitEvent=t(this,"submit-event",7),this.errorMessage=null,this.disputeResponse={},this.apiOrigin="https://wc-proxy.justifi.ai",this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.componentStepMapping=[()=>s("product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("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:f.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))}}componentWillLoad(){b(),this.analytics=new u(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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR});a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR});a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.submitDisputeResponse=y({disputeId:this.disputeId,authToken:this.authToken,service:new l})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:n.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}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:"7f9c8d56cfb86cea73ab2f299b83ff0de28f5c3e",class:"dispute-response-root"},s("div",{key:"a805bf54df79453127557bf651c3d776a381241f",class:"row gy-3"},s("div",{key:"2e6bc9cbe369e0ea5d200bc0934b4cad50f3c76f",class:"col-12"},s("h1",{key:"9876e9c87c6dfb405e7bad46d64fdb40ad048142",class:"h4",part:r},"Counter dispute")),s("div",{key:"045028232da5331c7041ad222c4e98364674ace3",class:"col-12"},this.currentStepComponent),s("div",{key:"0455c4856a44340ce25c1c4c8f776abb197f919f",class:"col-12"},s("div",{key:"5b990cc1d41b3a7152d727c941e9758ed70f75a1",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")))))}static get watchers(){return{disputeId:["propChanged"],authToken:["propChanged"]}}};export{v as dispute_notification,m as dispute_response}
1
+ import{r as e,c as t,h as s}from"./p-CV0Pyo1O.js";import{f as i}from"./p-Ds_P-dB8.js";import{t as a,a8 as r}from"./p-CPKMvyV_.js";import{B as d}from"./p-CHo7TfsM.js";import{S as c}from"./p-uZ5KAseb.js";import"./p-CZfYo5-1.js";import{C as o,b as n}from"./p-AyLerOda.js";import{g as h,a as p}from"./p-CXZRiaUw.js";import{D as f,a as l}from"./p-DB4q0kxv.js";import{c as b}from"./p-CoY0w4be.js";import{J as u}from"./p-CGTKc-Ra.js";import"./p-HXpYMWUU.js";import"./p-ClGSzzda.js";import"./p-DVJaoI_m.js";import"./p-D8GTwl9v.js";import"./p-DmrfgGzv.js";import"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";const y=({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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR})}a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{d()}},v=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.submitEvent=t(this,"submit-event",7)}acceptDispute(){y({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:f.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,o,n,h,p,f,l,b;return s("div",{key:"325018c414e82b5c1bc7d9c5aa444b5a9d4e83d6",class:"dispute-notification-root"},this.isLoading&&s("div",{key:"deffb8ef248e32962aca084a564e83aa5f222b0a",style:{marginBottom:"8px"}},s(c,{key:"6f6c630b3122b1b2fd480470f5df7683f19de612",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(c,{key:"11f46711fed1094496c64551f084351c08f598be",height:"18px",styles:{marginBottom:"8px"}}),s(c,{key:"fc7e2eac76e1cbc329147f3da39a8c28c51a7b6a",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&this.isDueDatePassed()&&s("div",{key:"0ef159acf9fe5b12dc0dcddab6b7583e5fc9a799",part:a},s("h1",{key:"db263006990c5b4cf178f7f81650ad7602765532",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:"185c6f952ef46e3aec625cab73c943b3046ef6b4"},"You can no longer submit evidence to counter this dispute.")),(null===(o=this.dispute)||void 0===o?void 0:o.needsResponse)&&!this.isDueDatePassed()&&s("div",{key:"d4536104addc500277fbde990b7b33ba8ff54c7e",part:a},s("h1",{key:"198138cc6541c0aeeae458e2de1e3ae0c695328d",class:"h4",part:r},"This payment is disputed"),s("p",{key:"6902ce5e3e94ab7f71ee6d0c6a7604ef97f0e740"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"f49d1ac855365480edc61e0af117230e2f3dbe1f",class:"h5"},"Dispute details"),s("div",{key:"f3868a098dbc4a613d676b8580c053527f9d5fad",class:"d-table gap-2"},s("div",{key:"7699bc619b652ffe1c77cf6e5e0dac967679b1e6",class:"d-table-row gap-2"},s("span",{key:"9de67b45877120f54f724f1efe7b3f4d4b035d30",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"bfd79f86b5b81daf2a34f5874fcff03a05d1e64d",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(n=this.dispute)||void 0===n?void 0:n.amount))),s("div",{key:"0e57d56172859eb5857a1930cb837569157026d9",class:"d-table-row gap-2"},s("span",{key:"0b615bd8f9a9add7d18d50be4f4f644707576de2",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"46288c67be32fe2d95fea88f5b0148f22552a2c9",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(h=this.dispute)||void 0===h?void 0:h.reason)),s("div",{key:"c68280b0f36280804fb6231236d942174c189456",class:"d-table-row gap-2"},s("span",{key:"ed3f145aa0f2c949b80d7033e4ecb818a4a4fa68",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Due Date"),s("span",{key:"4c4530acbc570fb13b5f53947714bd250ff99cab",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(p=this.dispute)||void 0===p?void 0:p.due_date))),s("div",{key:"3244bb6bdbed2b4e28c479c2d4db2d0ae152f2f0",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"3716a28cec93e70690ad96bfc0c5f3b7b56f8ecb",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"7f326ed6f298c9f1091b160c63e386864329190e",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(f=this.dispute)||void 0===f?void 0:f.underReview)&&s("div",{key:"d705ae48c1f30b904ac31bbdbab9e955868f51e1",part:a},s("h1",{key:"712cebef3699a8c2a97bcb69ae68e0b491090c88",class:"h4",part:r},"This payment is disputed and under review"),s("p",{key:"ca95b2c8bdc6083a3fbb1dd63c6bdaa4699ae2a7"},"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:"c0cb4c8342aa4f022d76e95123a047b7b707f562",part:a},s("h1",{key:"797966d237d4b46eb1b880deb7fa21746f5b3b1e",class:"h4",part:r},"This payment was disputed"),s("p",{key:"2f9eed1a5f34f772206112488af22aa8b35c07b6"},"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:"9a90af51218ed921e27519363995f12e29713bfd",part:a},s("h1",{key:"736ee5cf8f65d780d4812e24ea9050dcc0d109a4",class:"h4",part:r},"This payment was disputed"),s("p",{key:"9ca83087b028e1078bcc2cd0b552e8f5379932d1"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},m=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.stepCompleteEvent=t(this,"complete-form-step-event",7),this.submitEvent=t(this,"submit-event",7),this.errorMessage=null,this.disputeResponse={},this.apiOrigin="https://wc-proxy.justifi.ai",this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.componentStepMapping=[()=>s("product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("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:f.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:f.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))}}componentWillLoad(){b(),this.analytics=new u(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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR});a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{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:p(d.error),code:h(null===(c=d.error)||void 0===c?void 0:c.code),severity:o.ERROR});a(d)}catch(e){const t=h(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:o.ERROR})}finally{d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.submitDisputeResponse=y({disputeId:this.disputeId,authToken:this.authToken,service:new l})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:n.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}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:"7f9c8d56cfb86cea73ab2f299b83ff0de28f5c3e",class:"dispute-response-root"},s("div",{key:"a805bf54df79453127557bf651c3d776a381241f",class:"row gy-3"},s("div",{key:"2e6bc9cbe369e0ea5d200bc0934b4cad50f3c76f",class:"col-12"},s("h1",{key:"9876e9c87c6dfb405e7bad46d64fdb40ad048142",class:"h4",part:r},"Counter dispute")),s("div",{key:"045028232da5331c7041ad222c4e98364674ace3",class:"col-12"},this.currentStepComponent),s("div",{key:"0455c4856a44340ce25c1c4c8f776abb197f919f",class:"col-12"},s("div",{key:"5b990cc1d41b3a7152d727c941e9758ed70f75a1",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")))))}static get watchers(){return{disputeId:["propChanged"],authToken:["propChanged"]}}};export{v as dispute_notification,m as dispute_response}
@@ -1 +1 @@
1
- import{h as t,r as e,c as i}from"./p-CV0Pyo1O.js";import{n as s,C as a,b as r}from"./p-AyLerOda.js";import{J as n}from"./p-B5RnJXKG.js";import{c as o}from"./p-HtdZEF57.js";import{T as c}from"./p-Bx1A5sQR.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{p as h}from"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{g as d,a as p}from"./p-CXZRiaUw.js";import{m,S as u}from"./p-CDKbfqXv.js";import{S as l}from"./p-DzEdYT8R.js";import{T as f,a as b,b as v,c as g,d as y,e as k,f as j,g as C,h as w,i as _,j as T,k as S,l as D}from"./p-BICxxa69.js";import{T as O}from"./p-CZfYo5-1.js";import{B as P,a as A}from"./p-CHw7tICr.js";import{a6 as I,a7 as x}from"./p-CPKMvyV_.js";import{j as E}from"./p-Ds_P-dB8.js";import{o as B,g as G}from"./p-Dw63wyhO.js";import"./p-Dwe9A9Fk.js";import"./p-B2CETB_i.js";import"./p-D8GTwl9v.js";import"./p-CqiVXthx.js";const N={nickname:()=>t("th",{part:I,scope:"col",title:"The nickname associated with the terminal"},"Nickname"),model_name:()=>t("th",{part:I,scope:"col",title:"The model name of the terminal"},"Model Name"),id:()=>t("th",{part:I,scope:"col",title:"The ID of the terminal"},"ID"),provider:()=>t("th",{part:I,scope:"col",title:"The provider of the terminal"},"Provider"),provider_serial_number:()=>t("th",{part:I,scope:"col",title:"The serial number of the terminal"},"Serial Number"),device_id:()=>t("th",{part:I,scope:"col",title:"The device/provider ID of the terminal"},"Device ID"),sub_account_name:()=>t("th",{part:I,scope:"col",title:"The sub account associated with the terminal"},"Sub Account"),status:()=>t("th",{part:I,scope:"col",title:"The current status of each terminal"},"Status")},R={nickname:(e,i)=>t("td",{part:x(i)},e.nickname),model_name:(e,i)=>t("td",{part:x(i)},e.model_name),id:(e,i)=>t("td",{part:x(i)},e.id),provider:(e,i)=>t("td",{part:x(i)},E(e.provider)),provider_serial_number:(e,i)=>t("td",{part:x(i)},e.provider_serial_number),device_id:(e,i)=>t("td",{part:x(i)},e.provider_id),sub_account_name:(e,i)=>t("td",{part:x(i)},e.sub_account_name),status:(e,i)=>t("td",{part:x(i)},t(A,Object.assign({},{connected:{variant:P.SUCCESS,title:"This terminal is connected",text:"Connected"},disconnected:{variant:P.DANGER,title:"This terminal is disconnected",text:"Disconnected"},unknown:{variant:P.SECONDARY,title:"The status of this terminal is unknown",text:"Unknown"},pending_configuration:{variant:P.WARNING,title:"This terminal is pending configuration",text:"Pending configuration"},archived:{variant:P.SECONDARY,title:"This terminal is archived",text:"Archived"}}[e.status])))},V=class{constructor(t){e(this,t),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),this.terminals=[],this.subAccounts=[],this.loading=!0,this.paging=h,this.pagingParams={},this.columns="nickname,provider_serial_number,status",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:O.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:O.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const i=this.terminals.find((t=>t.id===e));this.clickEvent.emit({name:O.row,data:i})}}componentWillLoad(){o(),this.analytics=new n(this),this.terminalsTable=new f(this.terminals,this.columns,N,R),this.initializeGetData(),this.getTerminals&&this.getSubAccounts&&this.fetchData(),B("set",(()=>{this.pagingParams={}})),B("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetData()}updateOnPropChange(){this.fetchData()}initializeGetData(){this.initializeGetTerminals(),this.initializeGetSubAccounts()}initializeGetTerminals(){this.accountId&&this.authToken?this.getTerminals=(({id:t,authToken:e,service:i})=>async({params:r,onSuccess:n,onError:o})=>{var c,h;try{const m=await i.fetchTerminals(t,e,r);if(m.error)return o({error:p(m.error),code:d(null===(h=m.error)||void 0===h?void 0:h.code),severity:a.ERROR});{const t=Object.assign({},m.page_info);n({terminals:(null===(c=m.data)||void 0===c?void 0:c.map((t=>new s(t))))||[],pagingInfo:t})}}catch(t){const e=d(null==t?void 0:t.code);return o({error:t.message||t,code:e,severity:a.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new c}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:r.MISSING_PROPS,message:this.errorMessage,severity:a.ERROR}))}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=m({primaryAccountId:this.accountId,authToken:this.authToken,service:new u}))}fetchData(){this.loading=!0,this.getTerminals({params:this.terminalParams,onSuccess:async({terminals:t,pagingInfo:e})=>{this.terminals=t,this.paging=e,this.terminalsTable.collectionData=this.terminals,this.terminalsTable.columnKeys.includes("sub_account_name")?await this.fetchSubAccounts():this.loading=!1},onError:({error:t,code:e,severity:i})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:e,message:t,severity:i}),this.loading=!1}})}async fetchSubAccounts(){this.getSubAccounts({params:this.subAccountParams,onSuccess:({subAccounts:t})=>{this.subAccounts=t,this.terminals=this.terminals.map((t=>{var e;return t.sub_account_name=null===(e=this.subAccounts.find((e=>e.id===t.account_id)))||void 0===e?void 0:e.name,t})),this.loading=!1},onError:({error:t,code:e,severity:i})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:e,message:t,severity:i}),this.loading=!1}})}get terminalParams(){const t=G();return Object.assign(Object.assign({},t),this.pagingParams)}get subAccountParams(){const t=this.terminals.map((t=>t.account_id));return{sub_account_id:[...new Set(t)].join(",")}}get entityId(){return this.terminals.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalsTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return t(l,{key:"69c475e7a428c549a05f21bbd9bd80ce6d77836b"},t(b,{key:"a3d916daff63336299366f27959b8e54134f54c5"},t(v,{key:"412538503e7a212bd7b5723dddad82abe95fc3c2"},t(g,{key:"5501e72fd1931b1ffc17e6bf0d09d692b9cfbe17"},t(y,{key:"e0391a60a807cbdba97ef11f04275eb3072dc40c"},this.terminalsTable.columnData.map((t=>t)))),t(k,{key:"56686e423499aff459fa3d6d93fae0fd7621b10b"},t(j,{key:"0b70b5a0132754b1ce14e8baaeb7a9932c73b0ad",columnSpan:this.terminalsTable.columnKeys.length,isLoading:this.loading}),t(C,{key:"1230c30259de7ad89a1ccf1bb709db5bdda9152f",isEmpty:this.showEmptyState,columnSpan:this.terminalsTable.columnKeys.length}),t(w,{key:"fc5dbeae973d56980e077fa861d0bf95f282cbec",columnSpan:this.terminalsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalsTable.rowData.map(((e,i)=>t(_,{"data-test-id":"table-row","data-row-entity-id":this.entityId[i],onClick:this.rowClickHandler},e)))),this.paging&&t(T,{key:"c68e2cb14c8fa6a56243803e440cc13388ffaaf4"},t(S,{key:"bcc17671c48f5a397dff15333a49305a443aef21"},t(D,{key:"92a690d558b001bb346c2e17fb1e02691ec2a029",colSpan:this.terminalsTable.columnData.length},t("pagination-menu",{key:"2a8233397675c7af4fd95df203eb4438f1c4adbd",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"],pagingParams:["updateOnPropChange"],getTerminals:["updateOnPropChange"],getSubAccounts:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{V as justifi_terminals_list}
1
+ import{h as t,r as e,c as i}from"./p-CV0Pyo1O.js";import{n as s,C as a,b as r}from"./p-AyLerOda.js";import{J as o}from"./p-CGTKc-Ra.js";import{c as n}from"./p-CoY0w4be.js";import{T as c}from"./p-BJIJZgZH.js";import"./p-DVJaoI_m.js";import"./p-HXpYMWUU.js";import{p as h}from"./p-CLHwhyvu.js";import"./p-BcNb9bVO.js";import{g as d,a as p}from"./p-CXZRiaUw.js";import{m,S as u}from"./p-IADrgGjR.js";import{S as l}from"./p-DzEdYT8R.js";import{T as f,a as b,b as v,c as g,d as y,e as j,f as k,g as C,h as w,i as T,j as _,k as S,l as D}from"./p-BICxxa69.js";import{T as I}from"./p-CZfYo5-1.js";import{B as O,a as P}from"./p-CHw7tICr.js";import{a6 as A,a7 as x}from"./p-CPKMvyV_.js";import{j as G}from"./p-Ds_P-dB8.js";import{o as z,g as E}from"./p-Dw63wyhO.js";import"./p-DmrfgGzv.js";import"./p-ClGSzzda.js";import"./p-D8GTwl9v.js";import"./p-CqiVXthx.js";const B={nickname:()=>t("th",{part:A,scope:"col",title:"The nickname associated with the terminal"},"Nickname"),model_name:()=>t("th",{part:A,scope:"col",title:"The model name of the terminal"},"Model Name"),id:()=>t("th",{part:A,scope:"col",title:"The ID of the terminal"},"ID"),provider:()=>t("th",{part:A,scope:"col",title:"The provider of the terminal"},"Provider"),provider_serial_number:()=>t("th",{part:A,scope:"col",title:"The serial number of the terminal"},"Serial Number"),device_id:()=>t("th",{part:A,scope:"col",title:"The device/provider ID of the terminal"},"Device ID"),sub_account_name:()=>t("th",{part:A,scope:"col",title:"The sub account associated with the terminal"},"Sub Account"),status:()=>t("th",{part:A,scope:"col",title:"The current status of each terminal"},"Status")},N={nickname:(e,i)=>t("td",{part:x(i)},e.nickname),model_name:(e,i)=>t("td",{part:x(i)},e.model_name),id:(e,i)=>t("td",{part:x(i)},e.id),provider:(e,i)=>t("td",{part:x(i)},G(e.provider)),provider_serial_number:(e,i)=>t("td",{part:x(i)},e.provider_serial_number),device_id:(e,i)=>t("td",{part:x(i)},e.provider_id),sub_account_name:(e,i)=>t("td",{part:x(i)},e.sub_account_name),status:(e,i)=>t("td",{part:x(i)},t(P,Object.assign({},{connected:{variant:O.SUCCESS,title:"This terminal is connected",text:"Connected"},disconnected:{variant:O.DANGER,title:"This terminal is disconnected",text:"Disconnected"},unknown:{variant:O.SECONDARY,title:"The status of this terminal is unknown",text:"Unknown"},pending_configuration:{variant:O.WARNING,title:"This terminal is pending configuration",text:"Pending configuration"},archived:{variant:O.SECONDARY,title:"This terminal is archived",text:"Archived"}}[e.status])))},R=class{constructor(t){e(this,t),this.clickEvent=i(this,"click-event",7),this.errorEvent=i(this,"error-event",7),this.terminals=[],this.subAccounts=[],this.loading=!0,this.paging=h,this.pagingParams={},this.columns="nickname,provider_serial_number,status",this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:I.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:I.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const i=this.terminals.find((t=>t.id===e));this.clickEvent.emit({name:I.row,data:i})}}componentWillLoad(){n(),this.analytics=new o(this),this.terminalsTable=new f(this.terminals,this.columns,B,N),this.initializeGetData(),this.getTerminals&&this.getSubAccounts&&this.fetchData(),z("set",(()=>{this.pagingParams={}})),z("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}disconnectedCallback(){var t;null===(t=this.analytics)||void 0===t||t.cleanup()}propChanged(){this.initializeGetData()}updateOnPropChange(){this.fetchData()}initializeGetData(){this.initializeGetTerminals(),this.initializeGetSubAccounts()}initializeGetTerminals(){this.accountId&&this.authToken?this.getTerminals=(({id:t,authToken:e,service:i})=>async({params:r,onSuccess:o,onError:n})=>{var c,h;try{const m=await i.fetchTerminals(t,e,r);if(m.error)return n({error:p(m.error),code:d(null===(h=m.error)||void 0===h?void 0:h.code),severity:a.ERROR});{const t=Object.assign({},m.page_info);o({terminals:(null===(c=m.data)||void 0===c?void 0:c.map((t=>new s(t))))||[],pagingInfo:t})}}catch(t){const e=d(null==t?void 0:t.code);return n({error:t.message||t,code:e,severity:a.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new c}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:r.MISSING_PROPS,message:this.errorMessage,severity:a.ERROR}))}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=m({primaryAccountId:this.accountId,authToken:this.authToken,service:new u}))}fetchData(){this.loading=!0,this.getTerminals({params:this.terminalParams,onSuccess:async({terminals:t,pagingInfo:e})=>{this.terminals=t,this.paging=e,this.terminalsTable.collectionData=this.terminals,this.terminalsTable.columnKeys.includes("sub_account_name")?await this.fetchSubAccounts():this.loading=!1},onError:({error:t,code:e,severity:i})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:e,message:t,severity:i}),this.loading=!1}})}async fetchSubAccounts(){this.getSubAccounts({params:this.subAccountParams,onSuccess:({subAccounts:t})=>{this.subAccounts=t,this.terminals=this.terminals.map((t=>{var e;return t.sub_account_name=null===(e=this.subAccounts.find((e=>e.id===t.account_id)))||void 0===e?void 0:e.name,t})),this.loading=!1},onError:({error:t,code:e,severity:i})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:e,message:t,severity:i}),this.loading=!1}})}get terminalParams(){const t=E();return Object.assign(Object.assign({},t),this.pagingParams)}get subAccountParams(){const t=this.terminals.map((t=>t.account_id));return{sub_account_id:[...new Set(t)].join(",")}}get entityId(){return this.terminals.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalsTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return t(l,{key:"69c475e7a428c549a05f21bbd9bd80ce6d77836b"},t(b,{key:"a3d916daff63336299366f27959b8e54134f54c5"},t(v,{key:"412538503e7a212bd7b5723dddad82abe95fc3c2"},t(g,{key:"5501e72fd1931b1ffc17e6bf0d09d692b9cfbe17"},t(y,{key:"e0391a60a807cbdba97ef11f04275eb3072dc40c"},this.terminalsTable.columnData.map((t=>t)))),t(j,{key:"56686e423499aff459fa3d6d93fae0fd7621b10b"},t(k,{key:"0b70b5a0132754b1ce14e8baaeb7a9932c73b0ad",columnSpan:this.terminalsTable.columnKeys.length,isLoading:this.loading}),t(C,{key:"1230c30259de7ad89a1ccf1bb709db5bdda9152f",isEmpty:this.showEmptyState,columnSpan:this.terminalsTable.columnKeys.length}),t(w,{key:"fc5dbeae973d56980e077fa861d0bf95f282cbec",columnSpan:this.terminalsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalsTable.rowData.map(((e,i)=>t(T,{"data-test-id":"table-row","data-row-entity-id":this.entityId[i],onClick:this.rowClickHandler},e)))),this.paging&&t(_,{key:"c68e2cb14c8fa6a56243803e440cc13388ffaaf4"},t(S,{key:"bcc17671c48f5a397dff15333a49305a443aef21"},t(D,{key:"92a690d558b001bb346c2e17fb1e02691ec2a029",colSpan:this.terminalsTable.columnData.length},t("pagination-menu",{key:"2a8233397675c7af4fd95df203eb4438f1c4adbd",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"],pagingParams:["updateOnPropChange"],getTerminals:["updateOnPropChange"],getSubAccounts:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{R as justifi_terminals_list}