@justifi/webcomponents 5.4.2 → 5.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{SubAccount-06f9030b.js → SubAccount-2a302ead.js} +1 -0
- package/dist/cjs/bank-account-document-form-inputs_4.cjs.entry.js +1 -1
- package/dist/cjs/billing-form_3.cjs.entry.js +1 -1
- package/dist/cjs/{check-pkg-version-15023e22.js → check-pkg-version-64d3381a.js} +1 -1
- package/dist/cjs/{checkout.service-ab658f38.js → checkout.service-0a7835dc.js} +1 -1
- package/dist/cjs/checkouts-list-core.cjs.entry.js +1 -1
- package/dist/cjs/{dispute.service-1494b42c.js → dispute.service-6efc7d7f.js} +1 -1
- package/dist/cjs/{get-payout-csv-4240b172.js → get-payout-csv-7607c71e.js} +1 -1
- package/dist/cjs/{get-subaccounts-fa8dc254.js → get-subaccounts-ae5b35a8.js} +1 -1
- package/dist/cjs/justifi-additional-questions-form-step-core_6.cjs.entry.js +1 -1
- package/dist/cjs/justifi-additional-questions-form-step_9.cjs.entry.js +1 -1
- package/dist/cjs/justifi-business-details.cjs.entry.js +2 -2
- package/dist/cjs/justifi-business-form.cjs.entry.js +3 -3
- package/dist/cjs/justifi-checkout.cjs.entry.js +4 -4
- package/dist/cjs/justifi-checkouts-list-filters.cjs.entry.js +1 -1
- package/dist/cjs/justifi-checkouts-list.cjs.entry.js +5 -5
- package/dist/cjs/justifi-dispute-management.cjs.entry.js +4 -4
- package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +4 -4
- package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +2 -2
- package/dist/cjs/justifi-order-terminals.cjs.entry.js +9 -7
- package/dist/cjs/justifi-payment-details.cjs.entry.js +4 -4
- package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +2 -2
- package/dist/cjs/justifi-payments-list.cjs.entry.js +4 -4
- package/dist/cjs/justifi-payout-details.cjs.entry.js +4 -4
- package/dist/cjs/justifi-payouts-list.cjs.entry.js +5 -5
- package/dist/cjs/justifi-refund-payment.cjs.entry.js +26 -29
- package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +3 -3
- package/dist/cjs/justifi-terminal-orders-list-filters.cjs.entry.js +1 -1
- package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +4 -4
- package/dist/cjs/justifi-terminals-list-filters.cjs.entry.js +1 -1
- package/dist/cjs/justifi-terminals-list.cjs.entry.js +5 -5
- package/dist/cjs/justifi-tokenize-payment-method.cjs.entry.js +3 -3
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{package-868b01af.js → package-99f9fc82.js} +1 -1
- package/dist/cjs/{payment.service-97bef4f8.js → payment.service-537e049d.js} +1 -1
- package/dist/cjs/payments-list-core.cjs.entry.js +1 -1
- package/dist/cjs/payouts-list-core.cjs.entry.js +1 -1
- package/dist/cjs/terminal-orders-list-core.cjs.entry.js +2 -2
- package/dist/cjs/{terminal-orders-table-050e673f.js → terminal-orders-table-3b247193.js} +2 -0
- package/dist/cjs/{terminal.service-0aac977d.js → terminal.service-ab62c344.js} +1 -1
- package/dist/cjs/terminals-list-core.cjs.entry.js +1 -1
- package/dist/cjs/webcomponents.cjs.js +1 -1
- package/dist/collection/api/TerminalOrder.js +1 -0
- package/dist/collection/components/order-terminals/order-terminals.js +23 -3
- package/dist/collection/components/refund-payment/refund-payment.js +97 -52
- package/dist/collection/components/terminal-orders-list/terminal-orders-table.js +2 -0
- package/dist/docs.json +116 -43
- package/dist/esm/{SubAccount-837658ae.js → SubAccount-7520271c.js} +1 -0
- package/dist/esm/bank-account-document-form-inputs_4.entry.js +1 -1
- package/dist/esm/billing-form_3.entry.js +1 -1
- package/dist/esm/{check-pkg-version-a8dd8455.js → check-pkg-version-bbd75fa0.js} +1 -1
- package/dist/esm/{checkout.service-87cd501d.js → checkout.service-e38e477f.js} +1 -1
- package/dist/esm/checkouts-list-core.entry.js +1 -1
- package/dist/esm/{dispute.service-1f79929b.js → dispute.service-7ba6d5a4.js} +1 -1
- package/dist/esm/{get-payout-csv-6139c5fc.js → get-payout-csv-fa34f40b.js} +1 -1
- package/dist/esm/{get-subaccounts-c4b2b829.js → get-subaccounts-3c6b9e84.js} +1 -1
- package/dist/esm/justifi-additional-questions-form-step-core_6.entry.js +1 -1
- package/dist/esm/justifi-additional-questions-form-step_9.entry.js +1 -1
- package/dist/esm/justifi-business-details.entry.js +2 -2
- package/dist/esm/justifi-business-form.entry.js +3 -3
- package/dist/esm/justifi-checkout.entry.js +4 -4
- package/dist/esm/justifi-checkouts-list-filters.entry.js +1 -1
- package/dist/esm/justifi-checkouts-list.entry.js +5 -5
- package/dist/esm/justifi-dispute-management.entry.js +4 -4
- package/dist/esm/justifi-dispute-notification_3.entry.js +4 -4
- package/dist/esm/justifi-gross-payment-chart.entry.js +2 -2
- package/dist/esm/justifi-order-terminals.entry.js +9 -7
- package/dist/esm/justifi-payment-details.entry.js +4 -4
- package/dist/esm/justifi-payment-provisioning.entry.js +2 -2
- package/dist/esm/justifi-payments-list.entry.js +4 -4
- package/dist/esm/justifi-payout-details.entry.js +4 -4
- package/dist/esm/justifi-payouts-list.entry.js +5 -5
- package/dist/esm/justifi-refund-payment.entry.js +26 -29
- package/dist/esm/justifi-season-interruption-insurance.entry.js +3 -3
- package/dist/esm/justifi-terminal-orders-list-filters.entry.js +1 -1
- package/dist/esm/justifi-terminal-orders-list.entry.js +4 -4
- package/dist/esm/justifi-terminals-list-filters.entry.js +1 -1
- package/dist/esm/justifi-terminals-list.entry.js +5 -5
- package/dist/esm/justifi-tokenize-payment-method.entry.js +3 -3
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{package-f0bb46fd.js → package-01997353.js} +1 -1
- package/dist/esm/{payment.service-bc99d372.js → payment.service-af5bd8be.js} +1 -1
- package/dist/esm/payments-list-core.entry.js +1 -1
- package/dist/esm/payouts-list-core.entry.js +1 -1
- package/dist/esm/terminal-orders-list-core.entry.js +2 -2
- package/dist/esm/{terminal-orders-table-65d59323.js → terminal-orders-table-93e84d25.js} +2 -0
- package/dist/esm/{terminal.service-a8a968ac.js → terminal.service-d173566d.js} +1 -1
- package/dist/esm/terminals-list-core.entry.js +1 -1
- package/dist/esm/webcomponents.js +1 -1
- package/dist/module/SubAccount.js +1 -0
- package/dist/module/justifi-order-terminals.js +6 -3
- package/dist/module/justifi-refund-payment.js +31 -31
- package/dist/module/package.js +1 -1
- package/dist/module/terminal-orders-list-core2.js +2 -0
- package/dist/types/api/TerminalOrder.d.ts +2 -0
- package/dist/types/components/order-terminals/order-terminals.d.ts +2 -0
- package/dist/types/components/refund-payment/refund-payment.d.ts +9 -36
- package/dist/types/components/terminal-orders-list/terminal-orders-table.d.ts +2 -0
- package/dist/types/components.d.ts +11 -35
- package/dist/webcomponents/{p-74711d79.entry.js → p-07fbeff3.entry.js} +1 -1
- package/dist/webcomponents/{p-5bd1c32c.entry.js → p-0fa216eb.entry.js} +1 -1
- package/dist/webcomponents/{p-d86add24.entry.js → p-0fc1d3bb.entry.js} +1 -1
- package/dist/webcomponents/{p-60ec062a.entry.js → p-1134e1d3.entry.js} +1 -1
- package/dist/webcomponents/p-1c38ec65.entry.js +1 -0
- package/dist/webcomponents/{p-b5c7cb4c.entry.js → p-1ce63001.entry.js} +1 -1
- package/dist/webcomponents/{p-913e28d6.entry.js → p-290fa30d.entry.js} +1 -1
- package/dist/webcomponents/{p-0d7d61ac.js → p-2a9d7f6b.js} +1 -1
- package/dist/webcomponents/{p-9c4e3bac.js → p-3188f72a.js} +1 -1
- package/dist/webcomponents/{p-a589b3a1.entry.js → p-3cc7527a.entry.js} +1 -1
- package/dist/webcomponents/{p-ebd814ab.entry.js → p-3cf317d3.entry.js} +1 -1
- package/dist/webcomponents/{p-c438d1c8.entry.js → p-4598482c.entry.js} +1 -1
- package/dist/webcomponents/{p-96783edf.js → p-536fb8e2.js} +1 -1
- package/dist/webcomponents/{p-9e49cf17.js → p-54556fc6.js} +1 -1
- package/dist/webcomponents/{p-8c70396c.entry.js → p-645db2cb.entry.js} +1 -1
- package/dist/webcomponents/{p-14cfb25e.entry.js → p-65cb72e4.entry.js} +1 -1
- package/dist/webcomponents/{p-b299b597.entry.js → p-6a5eab1f.entry.js} +1 -1
- package/dist/webcomponents/p-7b793901.entry.js +1 -0
- package/dist/webcomponents/{p-e309516a.entry.js → p-7c333590.entry.js} +1 -1
- package/dist/webcomponents/p-81a6c3e2.entry.js +1 -0
- package/dist/webcomponents/{p-ac9f2e2b.js → p-87a4fb5b.js} +1 -1
- package/dist/webcomponents/{p-b99817a0.js → p-88a37837.js} +1 -1
- package/dist/webcomponents/{p-187d456b.entry.js → p-8a6a06e6.entry.js} +1 -1
- package/dist/webcomponents/{p-190ee091.entry.js → p-8d4a0192.entry.js} +1 -1
- package/dist/webcomponents/{p-72e71b3c.js → p-9a9732e1.js} +1 -1
- package/dist/webcomponents/p-9fecad5a.js +1 -0
- package/dist/webcomponents/{p-a2d30370.entry.js → p-a07e021f.entry.js} +1 -1
- package/dist/webcomponents/p-a6976c9c.entry.js +1 -0
- package/dist/webcomponents/{p-90b82e40.entry.js → p-a8c69f51.entry.js} +1 -1
- package/dist/webcomponents/{p-150e80db.entry.js → p-ab3a8004.entry.js} +1 -1
- package/dist/webcomponents/{p-746894be.entry.js → p-b082f07a.entry.js} +1 -1
- package/dist/webcomponents/{p-2819e94a.entry.js → p-b218af87.entry.js} +1 -1
- package/dist/webcomponents/{p-c00ef77b.entry.js → p-b979fcb0.entry.js} +1 -1
- package/dist/webcomponents/{p-45fda0bc.entry.js → p-caa29469.entry.js} +1 -1
- package/dist/webcomponents/{p-6a594a9f.js → p-cbad44b7.js} +1 -1
- package/dist/webcomponents/{p-5c5c1e82.entry.js → p-dd2938d3.entry.js} +1 -1
- package/dist/webcomponents/{p-431670c6.entry.js → p-e3855f51.entry.js} +1 -1
- package/dist/webcomponents/{p-1da00a0c.entry.js → p-e73be1b9.entry.js} +1 -1
- package/dist/webcomponents/p-e817d131.entry.js +1 -0
- package/dist/webcomponents/{p-3da2652e.js → p-f4aeb100.js} +1 -1
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +1 -1
- package/dist/webcomponents/p-507d8aa4.entry.js +0 -1
- package/dist/webcomponents/p-b26fb429.js +0 -1
- package/dist/webcomponents/p-c7313123.entry.js +0 -1
- package/dist/webcomponents/p-cf9e893a.entry.js +0 -1
- package/dist/webcomponents/p-dcff8139.entry.js +0 -1
- package/dist/webcomponents/p-f0a56d96.entry.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as s,r as t,c as e}from"./p-2783e363.js";import{a as i,b as o}from"./p-537bce77.js";import{F as r,c as n}from"./p-01033194.js";import{A as a,C as l,R as h,c}from"./p-5d1d2fd7.js";import{C as d,P as u}from"./p-525db3e8.js";import{h as m}from"./p-bf195b35.js";import{S as p}from"./p-56c7fc8d.js";import{a as v,r as f,s as b,b as y}from"./p-c9b78275.js";import{a as g,B as w}from"./p-73f9be7c.js";import{z as _,A as x,u as j,B as S,C as T,D as O,E as k,F as C}from"./p-bf12999f.js";import{C as L,a as H}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-0d7d61ac.js";import{a as E,b as D}from"./p-61f0a2ce.js";import{n as V}from"./p-e3c22aa9.js";import{B as A}from"./p-bfc2d88a.js";import{i as P,a as B}from"./p-d757fcf5.js";import{S as I}from"./p-6078a370.js";import"./p-1ff8810b.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";class W{constructor(s){this.id=s.id,this.account_owner_name=s.account_owner_name,this.full_name=s.full_name,this.account_type=s.account_type,this.account_number=s.account_number,this.acct_last_four=s.acct_last_four,this.account_number_last4=s.account_number_last4,this.routing_number=s.routing_number,this.bank_name=s.bank_name,this.country=s.country,this.currency=s.currency,this.nickname=s.nickname,this.metadata=s.metadata,this.business_id=s.business_id,this.platform_account_id=s.platform_account_id,this.created_at=s.created_at,this.updated_at=s.updated_at}get payload(){return{account_owner_name:this.account_owner_name||"",account_type:this.account_type||"",account_number:this.account_number||"",routing_number:this.routing_number||"",bank_name:this.bank_name||"",nickname:this.nickname||"",business_id:this.business_id||""}}}const F=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(p,{width:"25%"})),s("div",{class:"col-12"},s(p,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(p,{width:"50%"}),s(p,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(p,{width:"65%"}),s(p,{width:"35%"}))),N=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(p,{width:"40%",height:"40px"})),s(F,null),s(F,null),s(F,null)),U=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.additional_questions=new a(s.data.additional_questions||{}),this.formController.setInitialValues(Object.assign({},this.additional_questions))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.additionalQuestions}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t})),this.additional_questions=new a(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.additional_questions={},this.recurringPayments=!1,this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}recurringPaymentsWatcher(s){this.recurringPayments="Yes"===(null==s?void 0:s.business_recurring_payments)}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{additional_questions:new a(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(i(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){var t,e,i,o,r,n,a;const l=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Additional Questions"),s("form-control-tooltip",{helpText:"This information helps us understand the business and identify and monitor trends to safeguard you and your customers."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12 col-md-6"},s("form-control-monetary-provisioning",{name:"business_revenue",label:"What is your business’ estimated annual revenue from its primary business activities?",inputHandler:this.inputHandler,errorText:null===(t=this.errors)||void 0===t?void 0:t.business_revenue,defaultValue:null==l?void 0:l.business_revenue,maskOptions:d.WHOLE})),s("div",{class:"col-12 col-md-6"},s("form-control-monetary-provisioning",{name:"business_payment_volume",label:"What is your business' annual credit card & ACH volume anticipated to process?",inputHandler:this.inputHandler,errorText:null===(e=this.errors)||void 0===e?void 0:e.business_payment_volume,defaultValue:null==l?void 0:l.business_payment_volume,maskOptions:d.WHOLE})),s("div",{class:"col-12"},s("form-control-select",{name:"business_when_service_received",label:"On average, how long after paying will your customers typically receive their goods or services?",inputHandler:this.inputHandler,errorText:null===(i=this.errors)||void 0===i?void 0:i.business_when_service_received,options:v,defaultValue:null==l?void 0:l.business_when_service_received})),s("div",{class:"col-12"},s("form-control-select",{name:"business_recurring_payments",label:"Does your business offer recurring payments?",inputHandler:this.inputHandler,errorText:null===(o=this.errors)||void 0===o?void 0:o.business_recurring_payments,options:f,defaultValue:null==l?void 0:l.business_recurring_payments})),s("div",{class:"col-12",hidden:!this.recurringPayments},s("form-control-text",{name:"business_recurring_payments_percentage",label:"What percent of revenue is generated from each recurring payment type offered?",inputHandler:this.inputHandler,errorText:null===(r=this.errors)||void 0===r?void 0:r.business_recurring_payments_percentage,defaultValue:null==l?void 0:l.business_recurring_payments_percentage,helpText:"For example: 50% monthly, 50% annual."})),s("div",{class:"col-12"},s("form-control-select",{name:"business_seasonal",label:"Is this business seasonal?",inputHandler:this.inputHandler,errorText:null===(n=this.errors)||void 0===n?void 0:n.business_seasonal,options:b,defaultValue:null==l?void 0:l.business_seasonal})),s("div",{class:"col-12"},s("form-control-text",{name:"business_other_payment_details",label:"Is there anything else you would like us to know about how your customers pay the business? (optional)",inputHandler:this.inputHandler,errorText:null===(a=this.errors)||void 0===a?void 0:a.business_other_payment_details,defaultValue:null==l?void 0:l.business_other_payment_details})))))}static get watchers(){return{additional_questions:["recurringPaymentsWatcher"]}}},q=(s,t)=>{const e=n({bank_name:_.required("Enter bank name"),nickname:x.required("Enter nickname"),account_owner_name:j.required("Enter account owner name"),account_type:S.required("Select account type"),account_number:T.required("Enter account number"),routing_number:O.required("Enter routing number"),voided_check:k(s,t),bank_statement:C(s,t)}),i=n({bank_name:_.nullable(),nickname:x.nullable(),account_owner_name:j.nullable(),account_type:S.nullable(),account_number:T.nullable(),routing_number:O.nullable(),voided_check:k(s,t),bank_statement:C(s,t)});return t?i:e},R=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.initializeFormController=()=>{this.formController=new r(q(this.existingDocuments,this.allowOptionalFields)),this.formController.setInitialValues(Object.assign({},this.bankAccount)),this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.storeFiles=s=>{const t=Array.from(s.detail.fileList),e=s.detail.document_type,i=t.map((s=>new E({file:s,document_type:e},this.businessId)));this.documentData[e]=i},this.getData=()=>{this.isLoading=!0,this.getBusiness({onSuccess:s=>{s.data.bank_accounts.length>0?this.bankAccount=new W(s.data.bank_accounts[0]):(this.bankAccount=new W({}),this.bankAccount.business_id=this.businessId),this.existingDocuments=s.data.documents},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.initializeFormController(),this.isLoading=!1}})},this.postDocumentRecordData=async s=>{this.isLoading=!0;const t=s.record_data;return new Promise((e=>{this.postDocumentRecord({payload:t,onSuccess:t=>{e(this.handleDocRecordResponse(s,t))},onError:({error:s,code:t,severity:i})=>{this.errorEvent.emit({message:s,errorCode:t,severity:i}),e(!1)}})}))},this.handleDocRecordResponse=(s,t)=>t.error?(this.errorEvent.emit({errorCode:L.POST_ERROR,message:t.error.message,severity:H.ERROR,data:t.error}),!1):(s.setPresignedUrl(t.data.presigned_url),!0),this.uploadDocument=async s=>{if(!s.presigned_url)throw new Error("Presigned URL is not set");const t=await fetch(s.presigned_url,{method:"PUT",body:s.fileString});return this.handleUploadResponse(t)},this.handleUploadResponse=s=>!s.error||(this.errorEvent.emit({errorCode:L.POST_ERROR,message:s.error.message,severity:H.ERROR,data:s.error}),!1),this.formController=void 0,this.errors={},this.bankAccount={},this.existingDocuments=[],this.documentData=new D,this.isLoading=!1,this.businessId=void 0,this.getBusiness=void 0,this.postBankAccount=void 0,this.postDocumentRecord=void 0,this.allowOptionalFields=void 0}watchHandler(s){this.formLoading.emit(s)}async validateAndSubmit({onSuccess:s}){this.existingBankAccount?this.sendData(s):this.formController.validateAndSubmit((()=>this.sendData(s)))}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(q(this.existingDocuments,this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}get postPayload(){return new W(this.formController.values.getValue()).payload}get existingBankAccount(){var s;return!!(null===(s=this.bankAccount)||void 0===s?void 0:s.id)}async sendData(s){try{if(!this.existingBankAccount&&!await this.postBankAccountData())return;if(!await this.postBusinessDocuments())return;s()}catch(s){this.errorEvent.emit({message:s,errorCode:L.POST_ERROR,severity:H.ERROR})}}async postBankAccountData(){let s;return this.isLoading=!0,new Promise((t=>{let e=!1;this.postBankAccount({payload:this.postPayload,onSuccess:t=>{s=t,e=!0},onError:({error:s,code:t,severity:i})=>{e=!1,this.errorEvent.emit({message:s,errorCode:t,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:s,formStep:g.bankAccount}),this.isLoading=!1,t(e)}})}))}async postBusinessDocuments(){this.isLoading=!0;try{const s=Object.values(this.documentData).flat();return!s.length||!(await Promise.all(s.map((s=>this.postDocumentRecordData(s))))).includes(!1)&&!(await Promise.all(s.map((s=>this.uploadDocument(s))))).includes(!1)}finally{this.isLoading=!1}}render(){const t=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",{class:"mb-4"},s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Bank Account Info"),s("form-control-tooltip",{helpText:"This direct deposit account is the designated bank account where incoming funds will be deposited. The name of this account must match the registered business name exactly. We are not able to accept personal accounts unless your business is a registered sole proprietorship."})),s("hr",{class:"mt-2"}),s("bank-account-form-inputs",{defaultValue:t,errors:this.errors,inputHandler:this.inputHandler,formDisabled:this.existingBankAccount})),s("fieldset",{class:"mt-4"},s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Document Uploads"),s("form-control-tooltip",{helpText:"These documents are required for underwriting purposes. Various file formats such as PDF, DOC, DOCX, JPEG, and others are accepted. Multiple files can be uploaded for each document category."})),s("hr",{class:"mt-2"}),s("business-documents-on-file",{documents:this.existingDocuments,isLoading:this.isLoading}),s("bank-account-document-form-inputs",{inputHandler:this.inputHandler,errors:this.errors,storeFiles:this.storeFiles})))}static get watchers(){return{isLoading:["watchHandler"]}}},Y=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.coreInfo=new l(s.data),this.formController.setInitialValues(Object.assign({},this.coreInfo))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.businessInfo}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.coreInfo={},this.isLoading=!1,this.businessId=void 0,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return new l(this.formController.values.getValue()).payload}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(o(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){const t=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Business Information")),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12"},s("form-control-text",{name:"legal_name",label:"Business Name",defaultValue:t.legal_name,errorText:this.errors.legal_name,inputHandler:this.inputHandler,helpText:"Enter this exactly as it appears on your tax records (don't use acronyms or abbreviations unless you registered that way)."})),s("div",{class:"col-12"},s("form-control-text",{name:"doing_business_as",label:"Doing Business As (DBA)",defaultValue:t.doing_business_as,errorText:this.errors.doing_business_as,inputHandler:this.inputHandler,helpText:"Enter this exactly as it appears on your tax records (leave blank if you don't have a registered DBA/trade name)"})),s("div",{class:"col-12 col-md-8"},s("form-control-select",{name:"classification",label:"Business Classification",options:y,defaultValue:t.classification,errorText:this.errors.classification,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-4"},s("form-control-date",{name:"date_of_incorporation",label:"Date of Incorporation",defaultValue:t.date_of_incorporation,errorText:this.errors.date_of_incorporation,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"industry",label:"Industry",defaultValue:t.industry,errorText:this.errors.industry,inputHandler:this.inputHandler,helpText:"Describe what you sell"})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"tax_id",label:"Tax ID (EIN or SSN)",defaultValue:t.tax_id,errorText:this.errors.tax_id,inputHandler:this.inputHandler,keyDownHandler:V,maxLength:9,helpText:"Employer Identification Numbers (EINs) are nine digits. The federal tax identification number/EIN issued to you by the IRS. It can be found on your tax returns."})),s("div",{class:"col-12"},s("form-control-text",{name:"website_url",label:"Business Website URL",defaultValue:t.website_url,errorText:this.errors.website_url,inputHandler:this.inputHandler,helpText:"Don't have a live website? You can use your social media business page, app store link, or staging site URL."})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"email",label:"Business Email Address",defaultValue:t.email,errorText:this.errors.email,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-6"},s("form-control-number-masked",{name:"phone",label:"Business Phone Number",defaultValue:t.phone,errorText:this.errors.phone,inputHandler:this.inputHandler,mask:u.US})))))}},z=class{constructor(s){t(this,s),this.clickEvent=e(this,"click-event",7),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.matchRef=(s,t)=>{const e=this.refs.findIndex((s=>s===t));-1!==e&&(this.refs[e]=s)},this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{s.data.owners.length?this.ownersPayload=s.data.owners.map((s=>({id:s.id}))):this.addOwnerForm()},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1,this.manageRefs()}})},this.sendData=async s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:{owners:this.ownersPayload},onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.owners}),this.formLoading.emit(!1)}})},this.addOwnerForm=s=>{this.newFormOpen=!0,this.ownersPayload=[...this.ownersPayload,{id:""}],s&&this.clickEvent.emit({name:w.addOwnerForm})},this.removeOwnerForm=s=>{this.ownersPayload=this.ownersPayload.filter((t=>t.id!==s)),this.newFormOpen&&(this.newFormOpen=!1)},this.ownersPayload=[],this.refs=[],this.newFormOpen=void 0,this.isLoading=!1,this.authToken=void 0,this.businessId=void 0,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}get showAddOwnerButton(){return this.ownersPayload.length<4&&!this.newFormOpen}manageRefs(){this.refs=this.ownersPayload.map((s=>s.id))}async validateAndSubmit({onSuccess:s}){const t=this.refs.map((s=>s.validate()));if(!(await Promise.all(t)).every((s=>s)))return;const e=this.refs.map((s=>s.submit()));(await Promise.all(e)).every((s=>s))&&this.sendData(s)}componentWillLoad(){this.getBusiness&&this.getData()}ownersWatcher(){this.manageRefs()}handleOwnerSubmit(s){const t=s.detail,e=this.ownersPayload.map((s=>s.id===t.id?t:s));e.includes(t)||(e[this.ownersPayload.findIndex((s=>!s.id))]=t,this.newFormOpen&&(this.newFormOpen=!1)),this.ownersPayload=e}render(){return this.isLoading?s(N,null):s("div",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Owners"),s("form-control-tooltip",{helpText:"For partnerships, LLCs or privately held corporations, the business is required to apply with all individuals with 25% or more ownership to the application. For charities and registered non-profits, the business is required to apply with 1 individual with substantial control over the entity, such as a board member or director."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},this.ownersPayload.map((t=>s("justifi-owner-form",{key:t.id,authToken:this.authToken,businessId:this.businessId,ownerId:t.id,removeOwner:this.removeOwnerForm,newFormOpen:this.newFormOpen,ownersLength:this.ownersPayload.length,allowOptionalFields:this.allowOptionalFields,ref:s=>this.matchRef(s,t.id)})))),s("div",{class:"d-flex justify-content-start"},s("div",{class:"gap-2"},s(A,{variant:"primary",onClick:()=>this.addOwnerForm(!0),hidden:!this.showAddOwnerButton},"Add Owner"))))}static get watchers(){return{ownersPayload:["ownersWatcher"]}}},G=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.representative=new h(s.data.representative||{}),this.formController.setInitialValues(Object.assign({},this.representative))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.representative}),this.formLoading.emit(!1)}})},this.formController=void 0,this.errors={},this.representative={},this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{representative:new h(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(P("representative",this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){return this.isLoading?s(N,null):s("justifi-business-representative-form-inputs",{representativeDefaultValue:this.formController.getInitialValues(),errors:this.errors,formController:this.formController})}},J=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.legal_address=new c(s.data.legal_address||{}),this.formController.setInitialValues(Object.assign({},this.legal_address))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.legalAddress}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.legal_address={},this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{legal_address:new c(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(B(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){var t,e,i,o,r,n;const a=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Legal Address of your Business"),s("form-control-tooltip",{helpText:"No PO Boxes."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12"},s("form-control-text",{name:"line1",label:"Legal Address",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.line1,errorText:null===(t=this.errors)||void 0===t?void 0:t.line1})),s("div",{class:"col-12"},s("form-control-text",{name:"line2",label:"Address Line 2 (optional)",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.line2,errorText:null===(e=this.errors)||void 0===e?void 0:e.line2})),s("div",{class:"col-12"},s("form-control-text",{name:"city",label:"City",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.city,errorText:null===(i=this.errors)||void 0===i?void 0:i.city})),s("div",{class:"col-12"},s("form-control-select",{name:"state",label:"State",options:I,inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.state,errorText:null===(o=this.errors)||void 0===o?void 0:o.state})),s("div",{class:"col-12"},s("form-control-text",{name:"postal_code",label:"Postal Code",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.postal_code,errorText:null===(r=this.errors)||void 0===r?void 0:r.postal_code,maxLength:5,keyDownHandler:V})),s("div",{class:"col-12"},s("form-control-select",{name:"country",label:"Country",options:[{label:"United States",value:"USA"}],inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.country,errorText:null===(n=this.errors)||void 0===n?void 0:n.country,disabled:!0})))))}};export{U as justifi_additional_questions_form_step_core,R as justifi_business_bank_account_form_step_core,Y as justifi_business_core_info_form_step_core,z as justifi_business_owners_form_step_core,G as justifi_business_representative_form_step_core,J as justifi_legal_address_form_step_core}
|
|
1
|
+
import{h as s,r as t,c as e}from"./p-2783e363.js";import{a as i,b as o}from"./p-537bce77.js";import{F as r,c as n}from"./p-01033194.js";import{A as a,C as l,R as h,c}from"./p-5d1d2fd7.js";import{C as d,P as u}from"./p-525db3e8.js";import{h as m}from"./p-bf195b35.js";import{S as p}from"./p-56c7fc8d.js";import{a as f,r as v,s as b,b as y}from"./p-c9b78275.js";import{a as g,B as w}from"./p-73f9be7c.js";import{z as _,A as x,u as j,B as S,C as T,D as O,E as k,F as C}from"./p-bf12999f.js";import{C as L,a as H}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import{a as E,b as D}from"./p-61f0a2ce.js";import{n as V}from"./p-e3c22aa9.js";import{B as A}from"./p-bfc2d88a.js";import{i as P,a as B}from"./p-d757fcf5.js";import{S as I}from"./p-6078a370.js";import"./p-1ff8810b.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";class W{constructor(s){this.id=s.id,this.account_owner_name=s.account_owner_name,this.full_name=s.full_name,this.account_type=s.account_type,this.account_number=s.account_number,this.acct_last_four=s.acct_last_four,this.account_number_last4=s.account_number_last4,this.routing_number=s.routing_number,this.bank_name=s.bank_name,this.country=s.country,this.currency=s.currency,this.nickname=s.nickname,this.metadata=s.metadata,this.business_id=s.business_id,this.platform_account_id=s.platform_account_id,this.created_at=s.created_at,this.updated_at=s.updated_at}get payload(){return{account_owner_name:this.account_owner_name||"",account_type:this.account_type||"",account_number:this.account_number||"",routing_number:this.routing_number||"",bank_name:this.bank_name||"",nickname:this.nickname||"",business_id:this.business_id||""}}}const F=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(p,{width:"25%"})),s("div",{class:"col-12"},s(p,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(p,{width:"50%"}),s(p,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(p,{width:"65%"}),s(p,{width:"35%"}))),N=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(p,{width:"40%",height:"40px"})),s(F,null),s(F,null),s(F,null)),U=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.additional_questions=new a(s.data.additional_questions||{}),this.formController.setInitialValues(Object.assign({},this.additional_questions))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.additionalQuestions}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t})),this.additional_questions=new a(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.additional_questions={},this.recurringPayments=!1,this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}recurringPaymentsWatcher(s){this.recurringPayments="Yes"===(null==s?void 0:s.business_recurring_payments)}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{additional_questions:new a(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(i(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){var t,e,i,o,r,n,a;const l=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Additional Questions"),s("form-control-tooltip",{helpText:"This information helps us understand the business and identify and monitor trends to safeguard you and your customers."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12 col-md-6"},s("form-control-monetary-provisioning",{name:"business_revenue",label:"What is your business’ estimated annual revenue from its primary business activities?",inputHandler:this.inputHandler,errorText:null===(t=this.errors)||void 0===t?void 0:t.business_revenue,defaultValue:null==l?void 0:l.business_revenue,maskOptions:d.WHOLE})),s("div",{class:"col-12 col-md-6"},s("form-control-monetary-provisioning",{name:"business_payment_volume",label:"What is your business' annual credit card & ACH volume anticipated to process?",inputHandler:this.inputHandler,errorText:null===(e=this.errors)||void 0===e?void 0:e.business_payment_volume,defaultValue:null==l?void 0:l.business_payment_volume,maskOptions:d.WHOLE})),s("div",{class:"col-12"},s("form-control-select",{name:"business_when_service_received",label:"On average, how long after paying will your customers typically receive their goods or services?",inputHandler:this.inputHandler,errorText:null===(i=this.errors)||void 0===i?void 0:i.business_when_service_received,options:f,defaultValue:null==l?void 0:l.business_when_service_received})),s("div",{class:"col-12"},s("form-control-select",{name:"business_recurring_payments",label:"Does your business offer recurring payments?",inputHandler:this.inputHandler,errorText:null===(o=this.errors)||void 0===o?void 0:o.business_recurring_payments,options:v,defaultValue:null==l?void 0:l.business_recurring_payments})),s("div",{class:"col-12",hidden:!this.recurringPayments},s("form-control-text",{name:"business_recurring_payments_percentage",label:"What percent of revenue is generated from each recurring payment type offered?",inputHandler:this.inputHandler,errorText:null===(r=this.errors)||void 0===r?void 0:r.business_recurring_payments_percentage,defaultValue:null==l?void 0:l.business_recurring_payments_percentage,helpText:"For example: 50% monthly, 50% annual."})),s("div",{class:"col-12"},s("form-control-select",{name:"business_seasonal",label:"Is this business seasonal?",inputHandler:this.inputHandler,errorText:null===(n=this.errors)||void 0===n?void 0:n.business_seasonal,options:b,defaultValue:null==l?void 0:l.business_seasonal})),s("div",{class:"col-12"},s("form-control-text",{name:"business_other_payment_details",label:"Is there anything else you would like us to know about how your customers pay the business? (optional)",inputHandler:this.inputHandler,errorText:null===(a=this.errors)||void 0===a?void 0:a.business_other_payment_details,defaultValue:null==l?void 0:l.business_other_payment_details})))))}static get watchers(){return{additional_questions:["recurringPaymentsWatcher"]}}},q=(s,t)=>{const e=n({bank_name:_.required("Enter bank name"),nickname:x.required("Enter nickname"),account_owner_name:j.required("Enter account owner name"),account_type:S.required("Select account type"),account_number:T.required("Enter account number"),routing_number:O.required("Enter routing number"),voided_check:k(s,t),bank_statement:C(s,t)}),i=n({bank_name:_.nullable(),nickname:x.nullable(),account_owner_name:j.nullable(),account_type:S.nullable(),account_number:T.nullable(),routing_number:O.nullable(),voided_check:k(s,t),bank_statement:C(s,t)});return t?i:e},R=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.initializeFormController=()=>{this.formController=new r(q(this.existingDocuments,this.allowOptionalFields)),this.formController.setInitialValues(Object.assign({},this.bankAccount)),this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.storeFiles=s=>{const t=Array.from(s.detail.fileList),e=s.detail.document_type,i=t.map((s=>new E({file:s,document_type:e},this.businessId)));this.documentData[e]=i},this.getData=()=>{this.isLoading=!0,this.getBusiness({onSuccess:s=>{s.data.bank_accounts.length>0?this.bankAccount=new W(s.data.bank_accounts[0]):(this.bankAccount=new W({}),this.bankAccount.business_id=this.businessId),this.existingDocuments=s.data.documents},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.initializeFormController(),this.isLoading=!1}})},this.postDocumentRecordData=async s=>{this.isLoading=!0;const t=s.record_data;return new Promise((e=>{this.postDocumentRecord({payload:t,onSuccess:t=>{e(this.handleDocRecordResponse(s,t))},onError:({error:s,code:t,severity:i})=>{this.errorEvent.emit({message:s,errorCode:t,severity:i}),e(!1)}})}))},this.handleDocRecordResponse=(s,t)=>t.error?(this.errorEvent.emit({errorCode:L.POST_ERROR,message:t.error.message,severity:H.ERROR,data:t.error}),!1):(s.setPresignedUrl(t.data.presigned_url),!0),this.uploadDocument=async s=>{if(!s.presigned_url)throw new Error("Presigned URL is not set");const t=await fetch(s.presigned_url,{method:"PUT",body:s.fileString});return this.handleUploadResponse(t)},this.handleUploadResponse=s=>!s.error||(this.errorEvent.emit({errorCode:L.POST_ERROR,message:s.error.message,severity:H.ERROR,data:s.error}),!1),this.formController=void 0,this.errors={},this.bankAccount={},this.existingDocuments=[],this.documentData=new D,this.isLoading=!1,this.businessId=void 0,this.getBusiness=void 0,this.postBankAccount=void 0,this.postDocumentRecord=void 0,this.allowOptionalFields=void 0}watchHandler(s){this.formLoading.emit(s)}async validateAndSubmit({onSuccess:s}){this.existingBankAccount?this.sendData(s):this.formController.validateAndSubmit((()=>this.sendData(s)))}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(q(this.existingDocuments,this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}get postPayload(){return new W(this.formController.values.getValue()).payload}get existingBankAccount(){var s;return!!(null===(s=this.bankAccount)||void 0===s?void 0:s.id)}async sendData(s){try{if(!this.existingBankAccount&&!await this.postBankAccountData())return;if(!await this.postBusinessDocuments())return;s()}catch(s){this.errorEvent.emit({message:s,errorCode:L.POST_ERROR,severity:H.ERROR})}}async postBankAccountData(){let s;return this.isLoading=!0,new Promise((t=>{let e=!1;this.postBankAccount({payload:this.postPayload,onSuccess:t=>{s=t,e=!0},onError:({error:s,code:t,severity:i})=>{e=!1,this.errorEvent.emit({message:s,errorCode:t,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:s,formStep:g.bankAccount}),this.isLoading=!1,t(e)}})}))}async postBusinessDocuments(){this.isLoading=!0;try{const s=Object.values(this.documentData).flat();return!s.length||!(await Promise.all(s.map((s=>this.postDocumentRecordData(s))))).includes(!1)&&!(await Promise.all(s.map((s=>this.uploadDocument(s))))).includes(!1)}finally{this.isLoading=!1}}render(){const t=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",{class:"mb-4"},s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Bank Account Info"),s("form-control-tooltip",{helpText:"This direct deposit account is the designated bank account where incoming funds will be deposited. The name of this account must match the registered business name exactly. We are not able to accept personal accounts unless your business is a registered sole proprietorship."})),s("hr",{class:"mt-2"}),s("bank-account-form-inputs",{defaultValue:t,errors:this.errors,inputHandler:this.inputHandler,formDisabled:this.existingBankAccount})),s("fieldset",{class:"mt-4"},s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Document Uploads"),s("form-control-tooltip",{helpText:"These documents are required for underwriting purposes. Various file formats such as PDF, DOC, DOCX, JPEG, and others are accepted. Multiple files can be uploaded for each document category."})),s("hr",{class:"mt-2"}),s("business-documents-on-file",{documents:this.existingDocuments,isLoading:this.isLoading}),s("bank-account-document-form-inputs",{inputHandler:this.inputHandler,errors:this.errors,storeFiles:this.storeFiles})))}static get watchers(){return{isLoading:["watchHandler"]}}},Y=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.coreInfo=new l(s.data),this.formController.setInitialValues(Object.assign({},this.coreInfo))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.businessInfo}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.coreInfo={},this.isLoading=!1,this.businessId=void 0,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return new l(this.formController.values.getValue()).payload}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(o(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){const t=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Business Information")),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12"},s("form-control-text",{name:"legal_name",label:"Business Name",defaultValue:t.legal_name,errorText:this.errors.legal_name,inputHandler:this.inputHandler,helpText:"Enter this exactly as it appears on your tax records (don't use acronyms or abbreviations unless you registered that way)."})),s("div",{class:"col-12"},s("form-control-text",{name:"doing_business_as",label:"Doing Business As (DBA)",defaultValue:t.doing_business_as,errorText:this.errors.doing_business_as,inputHandler:this.inputHandler,helpText:"Enter this exactly as it appears on your tax records (leave blank if you don't have a registered DBA/trade name)"})),s("div",{class:"col-12 col-md-8"},s("form-control-select",{name:"classification",label:"Business Classification",options:y,defaultValue:t.classification,errorText:this.errors.classification,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-4"},s("form-control-date",{name:"date_of_incorporation",label:"Date of Incorporation",defaultValue:t.date_of_incorporation,errorText:this.errors.date_of_incorporation,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"industry",label:"Industry",defaultValue:t.industry,errorText:this.errors.industry,inputHandler:this.inputHandler,helpText:"Describe what you sell"})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"tax_id",label:"Tax ID (EIN or SSN)",defaultValue:t.tax_id,errorText:this.errors.tax_id,inputHandler:this.inputHandler,keyDownHandler:V,maxLength:9,helpText:"Employer Identification Numbers (EINs) are nine digits. The federal tax identification number/EIN issued to you by the IRS. It can be found on your tax returns."})),s("div",{class:"col-12"},s("form-control-text",{name:"website_url",label:"Business Website URL",defaultValue:t.website_url,errorText:this.errors.website_url,inputHandler:this.inputHandler,helpText:"Don't have a live website? You can use your social media business page, app store link, or staging site URL."})),s("div",{class:"col-12 col-md-6"},s("form-control-text",{name:"email",label:"Business Email Address",defaultValue:t.email,errorText:this.errors.email,inputHandler:this.inputHandler})),s("div",{class:"col-12 col-md-6"},s("form-control-number-masked",{name:"phone",label:"Business Phone Number",defaultValue:t.phone,errorText:this.errors.phone,inputHandler:this.inputHandler,mask:u.US})))))}},z=class{constructor(s){t(this,s),this.clickEvent=e(this,"click-event",7),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.matchRef=(s,t)=>{const e=this.refs.findIndex((s=>s===t));-1!==e&&(this.refs[e]=s)},this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{s.data.owners.length?this.ownersPayload=s.data.owners.map((s=>({id:s.id}))):this.addOwnerForm()},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1,this.manageRefs()}})},this.sendData=async s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:{owners:this.ownersPayload},onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.owners}),this.formLoading.emit(!1)}})},this.addOwnerForm=s=>{this.newFormOpen=!0,this.ownersPayload=[...this.ownersPayload,{id:""}],s&&this.clickEvent.emit({name:w.addOwnerForm})},this.removeOwnerForm=s=>{this.ownersPayload=this.ownersPayload.filter((t=>t.id!==s)),this.newFormOpen&&(this.newFormOpen=!1)},this.ownersPayload=[],this.refs=[],this.newFormOpen=void 0,this.isLoading=!1,this.authToken=void 0,this.businessId=void 0,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}get showAddOwnerButton(){return this.ownersPayload.length<4&&!this.newFormOpen}manageRefs(){this.refs=this.ownersPayload.map((s=>s.id))}async validateAndSubmit({onSuccess:s}){const t=this.refs.map((s=>s.validate()));if(!(await Promise.all(t)).every((s=>s)))return;const e=this.refs.map((s=>s.submit()));(await Promise.all(e)).every((s=>s))&&this.sendData(s)}componentWillLoad(){this.getBusiness&&this.getData()}ownersWatcher(){this.manageRefs()}handleOwnerSubmit(s){const t=s.detail,e=this.ownersPayload.map((s=>s.id===t.id?t:s));e.includes(t)||(e[this.ownersPayload.findIndex((s=>!s.id))]=t,this.newFormOpen&&(this.newFormOpen=!1)),this.ownersPayload=e}render(){return this.isLoading?s(N,null):s("div",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Owners"),s("form-control-tooltip",{helpText:"For partnerships, LLCs or privately held corporations, the business is required to apply with all individuals with 25% or more ownership to the application. For charities and registered non-profits, the business is required to apply with 1 individual with substantial control over the entity, such as a board member or director."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},this.ownersPayload.map((t=>s("justifi-owner-form",{key:t.id,authToken:this.authToken,businessId:this.businessId,ownerId:t.id,removeOwner:this.removeOwnerForm,newFormOpen:this.newFormOpen,ownersLength:this.ownersPayload.length,allowOptionalFields:this.allowOptionalFields,ref:s=>this.matchRef(s,t.id)})))),s("div",{class:"d-flex justify-content-start"},s("div",{class:"gap-2"},s(A,{variant:"primary",onClick:()=>this.addOwnerForm(!0),hidden:!this.showAddOwnerButton},"Add Owner"))))}static get watchers(){return{ownersPayload:["ownersWatcher"]}}},G=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.representative=new h(s.data.representative||{}),this.formController.setInitialValues(Object.assign({},this.representative))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.representative}),this.formLoading.emit(!1)}})},this.formController=void 0,this.errors={},this.representative={},this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{representative:new h(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(P("representative",this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){return this.isLoading?s(N,null):s("justifi-business-representative-form-inputs",{representativeDefaultValue:this.formController.getInitialValues(),errors:this.errors,formController:this.formController})}},J=class{constructor(s){t(this,s),this.stepCompleteEvent=e(this,"complete-form-step-event",7),this.errorEvent=e(this,"error-event",7),this.formLoading=e(this,"formLoading",7),this.getData=()=>{this.formLoading.emit(!0),this.isLoading=!0,this.getBusiness({onSuccess:s=>{this.legal_address=new c(s.data.legal_address||{}),this.formController.setInitialValues(Object.assign({},this.legal_address))},onError:({error:s,code:t,severity:e})=>{this.errorEvent.emit({message:s,errorCode:t,severity:e})},final:()=>{this.formLoading.emit(!1),this.isLoading=!1}})},this.sendData=s=>{let t;this.formLoading.emit(!0),this.patchBusiness({payload:this.patchPayload,onSuccess:e=>{t=e,s()},onError:({error:s,code:e,severity:i})=>{t=s,this.errorEvent.emit({message:s,errorCode:e,severity:i})},final:()=>{this.stepCompleteEvent.emit({response:t,formStep:g.legalAddress}),this.formLoading.emit(!1)}})},this.inputHandler=(s,t)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[s]:t}))},this.formController=void 0,this.errors={},this.legal_address={},this.isLoading=!1,this.getBusiness=void 0,this.patchBusiness=void 0,this.allowOptionalFields=void 0}async validateAndSubmit({onSuccess:s}){this.formController.validateAndSubmit((()=>this.sendData(s)))}get patchPayload(){return{legal_address:new c(this.formController.values.getValue()).payload}}componentWillLoad(){this.getBusiness&&this.getData(),this.formController=new r(B(this.allowOptionalFields))}componentDidLoad(){this.formController.errors.subscribe((s=>{this.errors=Object.assign({},s)}))}render(){var t,e,i,o,r,n;const a=this.formController.getInitialValues();return this.isLoading?s(N,null):s("form",null,s("fieldset",null,s("div",{class:"d-flex align-items-center gap-2"},s("legend",{class:"mb-0",part:m},"Legal Address of your Business"),s("form-control-tooltip",{helpText:"No PO Boxes."})),s("hr",{class:"mt-2"}),s("div",{class:"row gy-3"},s("div",{class:"col-12"},s("form-control-text",{name:"line1",label:"Legal Address",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.line1,errorText:null===(t=this.errors)||void 0===t?void 0:t.line1})),s("div",{class:"col-12"},s("form-control-text",{name:"line2",label:"Address Line 2 (optional)",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.line2,errorText:null===(e=this.errors)||void 0===e?void 0:e.line2})),s("div",{class:"col-12"},s("form-control-text",{name:"city",label:"City",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.city,errorText:null===(i=this.errors)||void 0===i?void 0:i.city})),s("div",{class:"col-12"},s("form-control-select",{name:"state",label:"State",options:I,inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.state,errorText:null===(o=this.errors)||void 0===o?void 0:o.state})),s("div",{class:"col-12"},s("form-control-text",{name:"postal_code",label:"Postal Code",inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.postal_code,errorText:null===(r=this.errors)||void 0===r?void 0:r.postal_code,maxLength:5,keyDownHandler:V})),s("div",{class:"col-12"},s("form-control-select",{name:"country",label:"Country",options:[{label:"United States",value:"USA"}],inputHandler:this.inputHandler,defaultValue:null==a?void 0:a.country,errorText:null===(n=this.errors)||void 0===n?void 0:n.country,disabled:!0})))))}};export{U as justifi_additional_questions_form_step_core,R as justifi_business_bank_account_form_step_core,Y as justifi_business_core_info_form_step_core,z as justifi_business_owners_form_step_core,G as justifi_business_representative_form_step_core,J as justifi_legal_address_form_step_core}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as s,c as i,h as t}from"./p-2783e363.js";import{c as e,J as o}from"./p-
|
|
1
|
+
import{r as s,c as i,h as t}from"./p-2783e363.js";import{c as e,J as o}from"./p-3188f72a.js";import{C as r,a as n}from"./p-9dd8685c.js";import{m as a,a as h}from"./p-b84ee6d8.js";import{B as p}from"./p-76549a24.js";import{A as d}from"./p-5f6b4bc9.js";import"./p-88a37837.js";import"./p-87f8c596.js";class c{async postProvisioning(s,i,t){const e={business_id:i,product_category:t};return d({authToken:s,apiOrigin:"https://wc-proxy.justifi.ai"}).post("entities/provisioning",e)}}const u=class{constructor(t){s(this,t),this.errorEvent=i(this,"error-event",7),this.postProvisioning=void 0,this.getBusiness=void 0,this.businessId=void 0,this.authToken=void 0,this.allowOptionalFields=!1,this.formTitle="Business Information"}propChanged(){this.initializeApi()}componentWillLoad(){e(),this.analytics=new o(this),this.initializeApi()}disconnectedCallback(){this.analytics.cleanup()}initializeApi(){this.authToken&&this.businessId?(this.getBusiness=a({authToken:this.authToken,businessId:this.businessId,service:new p}),this.postProvisioning=h({authToken:this.authToken,businessId:this.businessId,product:"payment",service:new c})):this.errorEvent.emit({message:"auth-token and business-id are required",errorCode:r.MISSING_PROPS,severity:n.ERROR})}render(){return t("justifi-payment-provisioning-core",{key:"ab584a720ecfc7ec4e68082fefadeb11fd2884d2",businessId:this.businessId,authToken:this.authToken,allowOptionalFields:this.allowOptionalFields,formTitle:this.formTitle,getBusiness:this.getBusiness,postProvisioning:this.postProvisioning})}static get watchers(){return{authToken:["propChanged"],businessId:["propChanged"]}}};export{u as justifi_payment_provisioning}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e,h as n,H as t,c as i,g as o}from"./p-2783e363.js";import{c as a,F as r}from"./p-01033194.js";import{u as s,l as c,k as d,m as f,n as l,q as u}from"./p-bf12999f.js";import{n as h}from"./p-e3c22aa9.js";import{S as m}from"./p-6078a370.js";import{F as b}from"./p-dbc1a95b.js";import{p as w}from"./p-b99817a0.js";import{a as p}from"./p-4cc3c7f9.js";import{i as g,b as y,a as v,c as k,l as x}from"./p-bf195b35.js";import"./p-c9b78275.js";import"./p-5d1d2fd7.js";import"./p-1ff8810b.js";import"./p-61f0a2ce.js";import"./p-f20b6ce1.js";const j=a({name:s.required("Enter full name"),address_line1:c.required("Enter street address"),address_line2:d.nullable(),address_city:f.required("Enter city"),address_state:l.required("Select state"),address_postal_code:u.required("Enter postal code")}),I=a({address_postal_code:u.required("Enter postal code")}),z=class{constructor(n){e(this,n),this.inputHandler=(e,n)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[e]:n}))},this.legend=void 0,this.formController=void 0,this.billingInfo=void 0,this.errors={}}componentWillLoad(){this.formController=new r(j)}componentDidLoad(){this.formController.values.subscribe((e=>this.billingInfo=Object.assign({},e))),this.formController.errors.subscribe((e=>{this.errors=Object.assign({},e)}))}async getValues(){return this.formController.values.getValue()}async fill(e){this.formController.setInitialValues(e)}async validate(){return{isValid:await this.formController.validate()}}render(){const e=this.formController.getInitialValues();return n(t,{key:"4e04724997c5fda2b4a18b8567da9cd5b0e5e1df"},n("form",{key:"3ad1b5cf693a428fccc6dcdb2da3456012a7e5bc"},n("fieldset",{key:"25701e25d37ceff483328dc0fdc38ed03d982a1d"},this.legend&&n("legend",{key:"c3f8bf4e1aa05446c9cce72f7abb3eb264eb1822"},this.legend),n("div",{key:"5ceaf13100d39a8107a5695a0140426f5db0ea50",class:"row gy-3"},n("div",{key:"3e0933b0d4398d1ee3b0b377c65cf2e2e663223b",class:"col-12"},n("form-control-text",{key:"13b37a27bfa031e03827cb5396b96ee4cbbe419c",name:"name",label:"Full Name",defaultValue:e.name,errorText:this.errors.name,inputHandler:this.inputHandler})),n("div",{key:"3e6616197e464a7532945fcd158fc36728a05485",class:"col-12"},n("form-control-text",{key:"5d6ebbf9e49eedb378d812a1c24bdfbaaf5e5fab",name:"address_line1",label:"Street Address",defaultValue:e.address_line1,errorText:this.errors.address_line1,inputHandler:this.inputHandler})),n("div",{key:"b0a7141b5d60cee445f69200979f97e86e8f0e3d",class:"col-12"},n("form-control-text",{key:"221f411f92bb92e753d5e2fc7e92e9ffe6d20da4",name:"address_line2",label:"Apartment, Suite, etc. (optional)",defaultValue:e.address_line2,errorText:this.errors.address_line2,inputHandler:this.inputHandler})),n("div",{key:"189854bdd6dc09039751f81fd65fd3e685731a99",class:"col-12"},n("form-control-text",{key:"cc815e308a51d23b139ecaa80afad76b58e761d7",name:"address_city",label:"City",defaultValue:e.address_city,errorText:this.errors.address_city,inputHandler:this.inputHandler})),n("div",{key:"d876d68af601bec261b6ad0728f8218b605714ff",class:"col-12"},n("form-control-select",{key:"d2ab5a47330708030eb904a1463a8fe71553921e",name:"address_state",label:"State",options:m,defaultValue:e.address_state,errorText:this.errors.address_state,inputHandler:this.inputHandler})),n("div",{key:"152b2e798fbeddcd493479fa15dcb31fe87adc69",class:"col-12"},n("form-control-text",{key:"050e2be5b9874d2e16eee050b2f9352c4c468657",name:"address_postal_code",label:"ZIP",defaultValue:e.address_postal_code,errorText:this.errors.address_postal_code,inputHandler:this.inputHandler,maxLength:5,keyDownHandler:h}))))))}};var O,M={exports:{}};O=M,console.info("\nIFRAME-RESIZER\n\nIframe-Resizer 5 is now available via the following two packages:\n\n * @iframe-resizer/parent\n * @iframe-resizer/child\n\nAdditionally their are also new versions of iframe-resizer for React, Vue, and jQuery.\n\nVersion 5 of iframe-resizer has been extensively rewritten to use modern browser APIs, which has enabled significantly better performance and greater accuracy in the detection of content resizing events.\n\nPlease see https://iframe-resizer.com/upgrade for more details.\n"),function(e){if("undefined"!=typeof window){var n,t,i=0,o=!1,a=!1,r=7,s="[iFrameSizer]",c=s.length,d=null,f=window.requestAnimationFrame,l=Object.freeze({max:1,scroll:1,bodyScroll:1,documentElementScroll:1}),u={},h=null,m=Object.freeze({autoResize:!0,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!0,inPageLinks:!1,enablePublicMethods:!0,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,license:"1jqr0si6pnt",log:!1,maxHeight:1/0,maxWidth:1/0,minHeight:0,minWidth:0,mouseEvents:!0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){x("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return!0}}),b={};window.jQuery!==e&&((t=window.jQuery).fn?t.fn.iFrameResize||(t.fn.iFrameResize=function(e){return this.filter("iframe").each((function(n,t){C(t,e)})).end()}):k("","Unable to bind to jQuery, it is not fully loaded.")),"function"==typeof e&&e.amd?e([],P):O.exports=P(),window.iFrameResize=window.iFrameResize||P()}function w(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function p(e,n,t){e.addEventListener(n,t,!1)}function g(e,n,t){e.removeEventListener(n,t,!1)}function y(e){return u[e]?u[e].log:o}function v(e,n){j("log",e,n,y(e))}function k(e,n){j("info",e,n,y(e))}function x(e,n){j("warn",e,n,!0)}function j(e,n,t,i){!0===i&&"object"==typeof window.console&&console[e](function(e){return s+"["+function(e){var n="Host page: "+e;return window.top!==window.self&&(n=window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+e:"Nested host page: "+e),n}(e)+"]"}(n),t)}function I(e){function n(){t("Height"),t("Width"),N((function(){H(_),S(W),m("onResized",_)}),_,"init")}function t(e){var n=Number(u[W]["max"+e]),t=Number(u[W]["min"+e]),i=e.toLowerCase(),o=Number(_[i]);v(W,"Checking "+i+" is in range "+t+"-"+n),o<t&&(o=t,v(W,"Set "+i+" to min value")),o>n&&(o=n,v(W,"Set "+i+" to max value")),_[i]=""+o}function i(e){return C.slice(C.indexOf(":")+r+e)}function o(e,n){var t,i;t=function(){var t,i;L("Send Page Info","pageInfo:"+(t=document.body.getBoundingClientRect(),i=_.iframe.getBoundingClientRect(),JSON.stringify({iframeHeight:i.height,iframeWidth:i.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(i.top-t.top,10),offsetLeft:parseInt(i.left-t.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})),e,n)},b[i=n]||(b[i]=setTimeout((function(){b[i]=null,t()}),32))}function a(e){var n=e.getBoundingClientRect();return T(W),{x:Math.floor(Number(n.left)+Number(d.x)),y:Math.floor(Number(n.top)+Number(d.y))}}function f(e){var n=e?a(_.iframe):{x:0,y:0},t={x:Number(_.width)+n.x,y:Number(_.height)+n.y};v(W,"Reposition requested from iFrame (offset x:"+n.x+" y:"+n.y+")"),window.top===window.self?(d=t,l(),v(W,"--")):window.parentIFrame?window.parentIFrame["scrollTo"+(e?"Offset":"")](t.x,t.y):x(W,"Unable to scroll to requested position, window.parentIFrame not found")}function l(){!1===m("onScroll",d)?R():S(W)}function h(e){var n={};if(0===Number(_.width)&&0===Number(_.height)){var t=i(9).split(":");n={x:t[1],y:t[0]}}else n={x:_.width,y:_.height};m(e,{iframe:_.iframe,screenX:Number(n.x),screenY:Number(n.y),type:_.type})}function m(e,n){return z(W,e,n)}var w,y,j,I,O,M,C=e.data,_={},W=null;"[iFrameResizerChild]Ready"===C?function(){for(var e in u)L("iFrame requested init",V(e),u[e].iframe,e)}():s===(""+C).slice(0,c)&&C.slice(c).split(":")[0]in u?(I=(j=C.slice(c).split(":"))[1]?parseInt(j[1],10):0,O=u[j[0]]&&u[j[0]].iframe,M=getComputedStyle(O),_={iframe:O,id:j[0],height:I+function(e){return"border-box"!==e.boxSizing?0:(e.paddingTop?parseInt(e.paddingTop,10):0)+(e.paddingBottom?parseInt(e.paddingBottom,10):0)}(M)+function(e){return"border-box"!==e.boxSizing?0:(e.borderTopWidth?parseInt(e.borderTopWidth,10):0)+(e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0)}(M),width:j[2],type:j[3]},u[W=_.id]&&(u[W].loaded=!0),(y=_.type in{true:1,false:1,undefined:1})&&v(W,"Ignoring init message from meta parent page"),!y&&function(e){var n=!0;return u[e]||(n=!1,x(_.type+" No settings for "+e+". Message was: "+C)),n}(W)&&(v(W,"Received: "+C),w=!0,null===_.iframe&&(x(W,"IFrame ("+_.id+") not found"),w=!1),w&&function(){var n,t=e.origin,i=u[W]&&u[W].checkOrigin;if(i&&""+t!="null"&&!(i.constructor===Array?function(){var e=0,n=!1;for(v(W,"Checking connection is from allowed list of origins: "+i);e<i.length;e++)if(i[e]===t){n=!0;break}return n}():(v(W,"Checking connection is from: "+(n=u[W]&&u[W].remoteHost)),t===n)))throw new Error("Unexpected message received from: "+t+" for "+_.iframe.id+". Message was: "+e.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return!0}()&&function(){switch(u[W]&&u[W].firstRun&&u[W]&&(u[W].firstRun=!1),_.type){case"close":F(_.iframe);break;case"message":c=i(6),v(W,"onMessage passed: {iframe: "+_.iframe.id+", message: "+c+"}"),m("onMessage",{iframe:_.iframe,message:JSON.parse(c)}),v(W,"--");break;case"mouseenter":h("onMouseEnter");break;case"mouseleave":h("onMouseLeave");break;case"autoResize":u[W].autoResize=JSON.parse(i(9));break;case"scrollTo":f(!1);break;case"scrollToOffset":f(!0);break;case"pageInfo":o(u[W]&&u[W].iframe,W),function(){function e(e,i){function a(){u[t]?o(u[t].iframe,t):n()}["scroll","resize"].forEach((function(n){v(t,e+n+" listener for sendPageInfo"),i(window,n,a)}))}function n(){e("Remove ",g)}var t=W;e("Add ",p),u[t]&&(u[t].stopPageInfo=n)}();break;case"pageInfoStop":u[W]&&u[W].stopPageInfo&&(u[W].stopPageInfo(),delete u[W].stopPageInfo);break;case"inPageLink":t=i(9).split("#")[1]||"",r=decodeURIComponent(t),(s=document.getElementById(r)||document.getElementsByName(r)[0])?(e=a(s),v(W,"Moving to in page link (#"+t+") at x: "+e.x+" y: "+e.y),d={x:e.x,y:e.y},l(),v(W,"--")):window.top===window.self?v(W,"In page link #"+t+" not found"):window.parentIFrame?window.parentIFrame.moveToAnchor(t):v(W,"In page link #"+t+" not found and window.parentIFrame not found");break;case"reset":E(_);break;case"init":n(),m("onInit",_.iframe);break;default:0===Number(_.width)&&0===Number(_.height)?x("Unsupported message received ("+_.type+"), this is likely due to the iframe containing a later version of iframe-resizer than the parent page"):n()}var e,t,r,s,c}())):k(W,"Ignored: "+C)}function z(e,n,t){var i=null,o=null;if(u[e]){if("function"!=typeof(i=u[e][n]))throw new TypeError(n+" on iFrame["+e+"] is not a function");o=i(t)}return o}function M(e){delete u[e.id]}function F(e){var t=e.id;if(!1!==z(t,"onClose",t)){v(t,"Removing iFrame: "+t);try{e.parentNode&&e.parentNode.removeChild(e)}catch(e){x(e)}z(t,"onClosed",t),v(t,"--"),M(e),n&&(n.disconnect(),n=null)}else v(t,"Close iframe cancelled by onClose event")}function T(n){null===d&&v(n,"Get page position: "+(d={x:window.pageXOffset===e?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===e?document.documentElement.scrollTop:window.pageYOffset}).x+","+d.y)}function S(e){null!==d&&(window.scrollTo(d.x,d.y),v(e,"Set page position: "+d.x+","+d.y),R())}function R(){d=null}function E(e){v(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame")),T(e.id),N((function(){H(e),L("reset","reset",e.iframe,e.id)}),e,"reset")}function H(e){function n(n){a||"0"!==e[n]||(a=!0,v(i,"Hidden iFrame detected, creating visibility listener"),function(){function e(){Object.keys(u).forEach((function(e){!function(e){function n(n){return"0px"===(u[e]&&u[e].iframe.style[n])}u[e]&&null!==u[e].iframe.offsetParent&&(n("height")||n("width"))&&L("Visibility change","resize",u[e].iframe,e)}(e)}))}function n(n){v("window","Mutation observed: "+n[0].target+" "+n[0].type),_(e,16)}var t,i=w();i&&(t=document.querySelector("body"),new i(n).observe(t,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}))}())}function t(t){!function(n){e.id?(e.iframe.style[n]=e[n]+"px",v(e.id,"IFrame ("+i+") "+n+" set to "+e[n]+"px")):v("undefined","messageData id not set")}(t),n(t)}var i=e.iframe.id;u[i]&&(u[i].sizeHeight&&t("height"),u[i].sizeWidth&&t("width"))}function N(e,n,t){t!==n.type&&f&&!window.jasmine?(v(n.id,"Requesting animation frame"),f(e)):e()}function L(e,n,t,i,o){var a,r=!1;u[i=i||t.id]&&(t&&"contentWindow"in t&&null!==t.contentWindow?(v(i,"["+e+"] Sending msg to iframe["+i+"] ("+n+") targetOrigin: "+(a=u[i]&&u[i].targetOrigin)),t.contentWindow.postMessage(s+n,a)):x(i,"["+e+"] IFrame("+i+") not found"),o&&u[i]&&u[i].warningTimeout&&(u[i].msgTimeout=setTimeout((function(){!u[i]||u[i].loaded||r||(r=!0,x(i,"IFrame has not responded within "+u[i].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning."))}),u[i].warningTimeout)))}function V(e){return e+":"+u[e].bodyMarginV1+":"+u[e].sizeWidth+":"+u[e].log+":"+u[e].interval+":"+u[e].enablePublicMethods+":"+u[e].autoResize+":"+u[e].bodyMargin+":"+u[e].heightCalculationMethod+":"+u[e].bodyBackground+":"+u[e].bodyPadding+":"+u[e].tolerance+":"+u[e].inPageLinks+":"+u[e].resizeFrom+":"+u[e].widthCalculationMethod+":"+u[e].mouseEvents}function C(t,a){function r(e){var n=e.split("Callback");if(2===n.length){var t="on"+n[0].charAt(0).toUpperCase()+n[0].slice(1);this[t]=this[e],delete this[e],x(d,"Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version.")}}var s,c,d=function(e){if("string"!=typeof e)throw new TypeError("Invaild id for iFrame. Expected String");var n;return""===e&&(t.id=(n=a&&a.id||m.id+i++,null!==document.getElementById(n)&&(n+=i++),e=n),o=(a||{}).log,v(e,"Added missing iframe ID: "+e+" ("+t.src+")")),e}(t.id);d in u&&"iFrameResizer"in t?x(d,"Ignored iFrame, already setup."):(function(e){var n;e=e||{},u[d]=Object.create(null),u[d].iframe=t,u[d].firstRun=!0,u[d].remoteHost=t.src&&t.src.split("/").slice(0,3).join("/"),function(e){if("object"!=typeof e)throw new TypeError("Options is not an object")}(e),Object.keys(e).forEach(r,e),function(e){for(var n in m)Object.prototype.hasOwnProperty.call(m,n)&&(u[d][n]=Object.prototype.hasOwnProperty.call(e,n)?e[n]:m[n])}(e),u[d]&&(u[d].targetOrigin=!0===u[d].checkOrigin?""===(n=u[d].remoteHost)||null!==n.match(/^(about:blank|javascript:|file:\/\/)/)?"*":n:"*")}(a),function(){switch(v(d,"IFrame scrolling "+(u[d]&&u[d].scrolling?"enabled":"disabled")+" for "+d),t.style.overflow=!1===(u[d]&&u[d].scrolling)?"hidden":"auto",u[d]&&u[d].scrolling){case"omit":break;case!0:t.scrolling="yes";break;case!1:t.scrolling="no";break;default:t.scrolling=u[d]?u[d].scrolling:"no"}}(),function(){function e(e){var n=u[d][e];1/0!==n&&0!==n&&(t.style[e]="number"==typeof n?n+"px":n,v(d,"Set "+e+" = "+t.style[e]))}function n(e){if(u[d]["min"+e]>u[d]["max"+e])throw new Error("Value for min"+e+" can not be greater than max"+e)}n("Height"),n("Width"),e("maxHeight"),e("minHeight"),e("maxWidth"),e("minWidth")}(),"number"!=typeof(u[d]&&u[d].bodyMargin)&&"0"!==(u[d]&&u[d].bodyMargin)||(u[d].bodyMarginV1=u[d].bodyMargin,u[d].bodyMargin=u[d].bodyMargin+"px"),s=V(d),(c=w())&&(n=function(e){if(!t.parentNode)return null;var n=new e((function(e){e.forEach((function(e){Array.prototype.slice.call(e.removedNodes).forEach((function(e){e===t&&F(t)}))}))}));return n.observe(t.parentNode,{childList:!0}),n}(c)),p(t,"load",(function(){L("iFrame.onload",s,t,e,!0),(!u[d]||!u[d].firstRun)&&u[d]&&u[d].heightCalculationMethod in l&&E({iframe:t,height:0,width:0,type:"init"})})),L("init",s,t,e,!0),u[d]&&(u[d].iframe.iFrameResizer={close:F.bind(null,u[d].iframe),removeListeners:M.bind(null,u[d].iframe),resize:L.bind(null,"Window resize","resize",u[d].iframe),moveToAnchor:function(e){L("Move to anchor","moveToAnchor:"+e,u[d].iframe,d)},sendMessage:function(e){L("Send Message","message:"+(e=JSON.stringify(e)),u[d].iframe,d)}}))}function _(e,n){null===h&&(h=setTimeout((function(){h=null,e()}),n))}function W(){"hidden"!==document.visibilityState&&(v("document","Trigger event: Visibility change"),_((function(){A("Tab Visible","resize")}),16))}function A(e,n){Object.keys(u).forEach((function(t){(function(e){return u[e]&&"parent"===u[e].resizeFrom&&u[e].autoResize&&!u[e].firstRun})(t)&&L(e,n,u[t].iframe,t)}))}function P(){function n(e,n){n&&(function(){if(!n.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==n.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+n.tagName+">")}(),C(n,e),t.push(n))}var t;return function(){var e,n=["moz","webkit","o","ms"];for(e=0;e<n.length&&!f;e+=1)f=window[n[e]+"RequestAnimationFrame"];f?f=f.bind(window):v("setup","RequestAnimationFrame not supported")}(),p(window,"message",I),p(window,"resize",(function(){v("window","Trigger event: resize"),_((function(){A("Window resize","resize")}),16)})),p(document,"visibilitychange",W),p(document,"-webkit-visibilitychange",W),function(i,o){switch(t=[],function(e){e&&e.enablePublicMethods&&x("enablePublicMethods option has been removed, public methods are now always available in the iFrame")}(i),typeof o){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(o||"iframe"),n.bind(e,i));break;case"object":n(i,o);break;default:throw new TypeError("Unexpected data type ("+typeof o+")")}return t}}}();const F=M.exports;class T{constructor(e,n){this.iframe=e,this.iframeOrigin=n}postMessage(e,n){const t=Object.assign({eventType:e},n);this.iframe.contentWindow.postMessage(t,this.iframeOrigin)}addMessageListener(e){window.addEventListener("message",e)}removeMessageListener(e){window.removeEventListener("message",e)}postMessageWithResponseListener(e,n){return new Promise((t=>{const i=n=>{n.data.eventType===e&&(window.removeEventListener("message",i),t(n.data.data))};window.addEventListener("message",i),this.postMessage(e,n)}))}}const S=class{constructor(n){e(this,n),this.iframeLoaded=i(this,"iframeLoaded",7),this.dispatchMessageEvent=e=>{const{eventType:n,data:t}=e.data;(null==t?void 0:t.id)===this.inputId&&("focused"===n&&(this.isFocused=!0),"blurred"===n&&(this.isFocused=!1))},this.isFocused=!1,this.isValid=!0,this.errorText=void 0,this.inputId=void 0,this.label=void 0,this.iframeOrigin=void 0}disconnectedCallback(){this.frameService.removeMessageListener(this.dispatchMessageEvent)}async validate(){const e=await this.frameService.postMessageWithResponseListener("validate");return this.isValid=e.isValid,this.errorText=e.error.message,e}async tokenize(e,n,t){return this.frameService.postMessageWithResponseListener("tokenize",{clientId:e,paymentMethodMetadata:n,account:t,componentVersion:w.version})}initializeFrameCommunicationService(){var e;this.frameService=new T(this.iframeElement,this.iframeOrigin),null===(e=this.frameService)||void 0===e||e.addMessageListener(this.dispatchMessageEvent)}get part(){return this.isFocused&&!this.isValid?g:this.isValid?this.isFocused?v:k:y}get style(){return this.isFocused?this.isValid?p.focused:p.focusedAndInvalid:null}get urlParams(){const e=Object.fromEntries(Object.entries(p.fontStyles).map((([e,n])=>[e,btoa(String(n))])));return new URLSearchParams(e).toString()}render(){return n(t,{key:"0c7696f592d079436b8a91d33474f74de2922917",class:"form-group d-flex flex-column"},n("div",{key:"947cd055eb77e78ec719da130fab97ca093e4954",style:{visibility:this.iframeLoaded?"visible":"hidden",height:this.iframeLoaded?"auto":"0"}},n("label",{key:"59dfc89fb0ffb5163b9ea6c7eef12b1ff5bab5d2",class:"form-label",htmlFor:"",part:x},this.label||""),n("div",{key:"cad88a50d0381285a1c125e1331c3e401327554d",class:"p-0 d-flex form-control "+(this.isValid?"":"is-invalid"),part:this.part,style:Object.assign(Object.assign({},this.style),{overflow:"hidden"})},n("iframe",{key:"bf4af4cc965ddd4376b5780ea53824cb268c1952",id:this.inputId,name:this.inputId,src:`${this.iframeOrigin}?${this.urlParams}`,ref:e=>{this.iframeElement=e,this.initializeFrameCommunicationService()},width:"100%",onLoad:()=>{F({log:!1,onResized:()=>{this.iframeLoaded.emit()}},this.iframeElement)}})),n(b,{key:"785e5ad09f32240299116d906f5a5dbf3f03ed5e",errorText:this.errorText,name:this.inputId})))}get el(){return o(this)}},R=class{constructor(n){e(this,n),this.inputHandler=(e,n)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[e]:n}))},this.legend=void 0,this.formController=void 0,this.billingInfo=void 0,this.errors={}}componentWillLoad(){this.formController=new r(I)}componentDidLoad(){this.formController.values.subscribe((e=>this.billingInfo=Object.assign({},e))),this.formController.errors.subscribe((e=>{this.errors=Object.assign({},e)}))}async getValues(){return this.formController.values.getValue()}async fill(e){this.formController.setInitialValues(e)}async validate(){return{isValid:await this.formController.validate()}}render(){const e=this.formController.getInitialValues();return n(t,{key:"3d70df5d84e1ee5bf9dfac6802d363e06341174e"},n("form",{key:"f91ec1a5078461075c419be4402a8df393bae499"},n("fieldset",{key:"25ccb09388339cab44e70319c9d918c51d6049bf"},this.legend&&n("legend",{key:"292c52a34f7eba726121c68ced16e91d7f442b7f"},this.legend),n("div",{key:"a29e228daceb269c8d2137aed1cfe6db8eb7d821",class:"row gy-3"},n("div",{key:"b4bf02f82a7048051fe72c409da6612533ee2645",class:"col-12"},n("form-control-text",{key:"43ef0840e700024c2aeab32cf8e2f4bd3b360de6",name:"address_postal_code",label:"ZIP",defaultValue:e.address_postal_code,errorText:this.errors.address_postal_code,inputHandler:this.inputHandler,maxLength:5,keyDownHandler:h}))))))}};export{z as billing_form,S as iframe_input,R as postal_form}
|
|
1
|
+
import{r as e,h as n,H as t,c as i,g as o}from"./p-2783e363.js";import{c as a,F as r}from"./p-01033194.js";import{u as s,l as c,k as d,m as f,n as l,q as u}from"./p-bf12999f.js";import{n as h}from"./p-e3c22aa9.js";import{S as m}from"./p-6078a370.js";import{F as b}from"./p-dbc1a95b.js";import{p as w}from"./p-88a37837.js";import{a as p}from"./p-4cc3c7f9.js";import{i as g,b as y,a as v,c as k,l as x}from"./p-bf195b35.js";import"./p-c9b78275.js";import"./p-5d1d2fd7.js";import"./p-1ff8810b.js";import"./p-61f0a2ce.js";import"./p-f20b6ce1.js";const j=a({name:s.required("Enter full name"),address_line1:c.required("Enter street address"),address_line2:d.nullable(),address_city:f.required("Enter city"),address_state:l.required("Select state"),address_postal_code:u.required("Enter postal code")}),I=a({address_postal_code:u.required("Enter postal code")}),z=class{constructor(n){e(this,n),this.inputHandler=(e,n)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[e]:n}))},this.legend=void 0,this.formController=void 0,this.billingInfo=void 0,this.errors={}}componentWillLoad(){this.formController=new r(j)}componentDidLoad(){this.formController.values.subscribe((e=>this.billingInfo=Object.assign({},e))),this.formController.errors.subscribe((e=>{this.errors=Object.assign({},e)}))}async getValues(){return this.formController.values.getValue()}async fill(e){this.formController.setInitialValues(e)}async validate(){return{isValid:await this.formController.validate()}}render(){const e=this.formController.getInitialValues();return n(t,{key:"4e04724997c5fda2b4a18b8567da9cd5b0e5e1df"},n("form",{key:"3ad1b5cf693a428fccc6dcdb2da3456012a7e5bc"},n("fieldset",{key:"25701e25d37ceff483328dc0fdc38ed03d982a1d"},this.legend&&n("legend",{key:"c3f8bf4e1aa05446c9cce72f7abb3eb264eb1822"},this.legend),n("div",{key:"5ceaf13100d39a8107a5695a0140426f5db0ea50",class:"row gy-3"},n("div",{key:"3e0933b0d4398d1ee3b0b377c65cf2e2e663223b",class:"col-12"},n("form-control-text",{key:"13b37a27bfa031e03827cb5396b96ee4cbbe419c",name:"name",label:"Full Name",defaultValue:e.name,errorText:this.errors.name,inputHandler:this.inputHandler})),n("div",{key:"3e6616197e464a7532945fcd158fc36728a05485",class:"col-12"},n("form-control-text",{key:"5d6ebbf9e49eedb378d812a1c24bdfbaaf5e5fab",name:"address_line1",label:"Street Address",defaultValue:e.address_line1,errorText:this.errors.address_line1,inputHandler:this.inputHandler})),n("div",{key:"b0a7141b5d60cee445f69200979f97e86e8f0e3d",class:"col-12"},n("form-control-text",{key:"221f411f92bb92e753d5e2fc7e92e9ffe6d20da4",name:"address_line2",label:"Apartment, Suite, etc. (optional)",defaultValue:e.address_line2,errorText:this.errors.address_line2,inputHandler:this.inputHandler})),n("div",{key:"189854bdd6dc09039751f81fd65fd3e685731a99",class:"col-12"},n("form-control-text",{key:"cc815e308a51d23b139ecaa80afad76b58e761d7",name:"address_city",label:"City",defaultValue:e.address_city,errorText:this.errors.address_city,inputHandler:this.inputHandler})),n("div",{key:"d876d68af601bec261b6ad0728f8218b605714ff",class:"col-12"},n("form-control-select",{key:"d2ab5a47330708030eb904a1463a8fe71553921e",name:"address_state",label:"State",options:m,defaultValue:e.address_state,errorText:this.errors.address_state,inputHandler:this.inputHandler})),n("div",{key:"152b2e798fbeddcd493479fa15dcb31fe87adc69",class:"col-12"},n("form-control-text",{key:"050e2be5b9874d2e16eee050b2f9352c4c468657",name:"address_postal_code",label:"ZIP",defaultValue:e.address_postal_code,errorText:this.errors.address_postal_code,inputHandler:this.inputHandler,maxLength:5,keyDownHandler:h}))))))}};var O,M={exports:{}};O=M,console.info("\nIFRAME-RESIZER\n\nIframe-Resizer 5 is now available via the following two packages:\n\n * @iframe-resizer/parent\n * @iframe-resizer/child\n\nAdditionally their are also new versions of iframe-resizer for React, Vue, and jQuery.\n\nVersion 5 of iframe-resizer has been extensively rewritten to use modern browser APIs, which has enabled significantly better performance and greater accuracy in the detection of content resizing events.\n\nPlease see https://iframe-resizer.com/upgrade for more details.\n"),function(e){if("undefined"!=typeof window){var n,t,i=0,o=!1,a=!1,r=7,s="[iFrameSizer]",c=s.length,d=null,f=window.requestAnimationFrame,l=Object.freeze({max:1,scroll:1,bodyScroll:1,documentElementScroll:1}),u={},h=null,m=Object.freeze({autoResize:!0,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!0,inPageLinks:!1,enablePublicMethods:!0,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,license:"1jqr0si6pnt",log:!1,maxHeight:1/0,maxWidth:1/0,minHeight:0,minWidth:0,mouseEvents:!0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){x("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return!0}}),b={};window.jQuery!==e&&((t=window.jQuery).fn?t.fn.iFrameResize||(t.fn.iFrameResize=function(e){return this.filter("iframe").each((function(n,t){C(t,e)})).end()}):k("","Unable to bind to jQuery, it is not fully loaded.")),"function"==typeof e&&e.amd?e([],P):O.exports=P(),window.iFrameResize=window.iFrameResize||P()}function w(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function p(e,n,t){e.addEventListener(n,t,!1)}function g(e,n,t){e.removeEventListener(n,t,!1)}function y(e){return u[e]?u[e].log:o}function v(e,n){j("log",e,n,y(e))}function k(e,n){j("info",e,n,y(e))}function x(e,n){j("warn",e,n,!0)}function j(e,n,t,i){!0===i&&"object"==typeof window.console&&console[e](function(e){return s+"["+function(e){var n="Host page: "+e;return window.top!==window.self&&(n=window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+e:"Nested host page: "+e),n}(e)+"]"}(n),t)}function I(e){function n(){t("Height"),t("Width"),N((function(){H(_),S(W),m("onResized",_)}),_,"init")}function t(e){var n=Number(u[W]["max"+e]),t=Number(u[W]["min"+e]),i=e.toLowerCase(),o=Number(_[i]);v(W,"Checking "+i+" is in range "+t+"-"+n),o<t&&(o=t,v(W,"Set "+i+" to min value")),o>n&&(o=n,v(W,"Set "+i+" to max value")),_[i]=""+o}function i(e){return C.slice(C.indexOf(":")+r+e)}function o(e,n){var t,i;t=function(){var t,i;L("Send Page Info","pageInfo:"+(t=document.body.getBoundingClientRect(),i=_.iframe.getBoundingClientRect(),JSON.stringify({iframeHeight:i.height,iframeWidth:i.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(i.top-t.top,10),offsetLeft:parseInt(i.left-t.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})),e,n)},b[i=n]||(b[i]=setTimeout((function(){b[i]=null,t()}),32))}function a(e){var n=e.getBoundingClientRect();return T(W),{x:Math.floor(Number(n.left)+Number(d.x)),y:Math.floor(Number(n.top)+Number(d.y))}}function f(e){var n=e?a(_.iframe):{x:0,y:0},t={x:Number(_.width)+n.x,y:Number(_.height)+n.y};v(W,"Reposition requested from iFrame (offset x:"+n.x+" y:"+n.y+")"),window.top===window.self?(d=t,l(),v(W,"--")):window.parentIFrame?window.parentIFrame["scrollTo"+(e?"Offset":"")](t.x,t.y):x(W,"Unable to scroll to requested position, window.parentIFrame not found")}function l(){!1===m("onScroll",d)?R():S(W)}function h(e){var n={};if(0===Number(_.width)&&0===Number(_.height)){var t=i(9).split(":");n={x:t[1],y:t[0]}}else n={x:_.width,y:_.height};m(e,{iframe:_.iframe,screenX:Number(n.x),screenY:Number(n.y),type:_.type})}function m(e,n){return z(W,e,n)}var w,y,j,I,O,M,C=e.data,_={},W=null;"[iFrameResizerChild]Ready"===C?function(){for(var e in u)L("iFrame requested init",V(e),u[e].iframe,e)}():s===(""+C).slice(0,c)&&C.slice(c).split(":")[0]in u?(I=(j=C.slice(c).split(":"))[1]?parseInt(j[1],10):0,O=u[j[0]]&&u[j[0]].iframe,M=getComputedStyle(O),_={iframe:O,id:j[0],height:I+function(e){return"border-box"!==e.boxSizing?0:(e.paddingTop?parseInt(e.paddingTop,10):0)+(e.paddingBottom?parseInt(e.paddingBottom,10):0)}(M)+function(e){return"border-box"!==e.boxSizing?0:(e.borderTopWidth?parseInt(e.borderTopWidth,10):0)+(e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0)}(M),width:j[2],type:j[3]},u[W=_.id]&&(u[W].loaded=!0),(y=_.type in{true:1,false:1,undefined:1})&&v(W,"Ignoring init message from meta parent page"),!y&&function(e){var n=!0;return u[e]||(n=!1,x(_.type+" No settings for "+e+". Message was: "+C)),n}(W)&&(v(W,"Received: "+C),w=!0,null===_.iframe&&(x(W,"IFrame ("+_.id+") not found"),w=!1),w&&function(){var n,t=e.origin,i=u[W]&&u[W].checkOrigin;if(i&&""+t!="null"&&!(i.constructor===Array?function(){var e=0,n=!1;for(v(W,"Checking connection is from allowed list of origins: "+i);e<i.length;e++)if(i[e]===t){n=!0;break}return n}():(v(W,"Checking connection is from: "+(n=u[W]&&u[W].remoteHost)),t===n)))throw new Error("Unexpected message received from: "+t+" for "+_.iframe.id+". Message was: "+e.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return!0}()&&function(){switch(u[W]&&u[W].firstRun&&u[W]&&(u[W].firstRun=!1),_.type){case"close":F(_.iframe);break;case"message":c=i(6),v(W,"onMessage passed: {iframe: "+_.iframe.id+", message: "+c+"}"),m("onMessage",{iframe:_.iframe,message:JSON.parse(c)}),v(W,"--");break;case"mouseenter":h("onMouseEnter");break;case"mouseleave":h("onMouseLeave");break;case"autoResize":u[W].autoResize=JSON.parse(i(9));break;case"scrollTo":f(!1);break;case"scrollToOffset":f(!0);break;case"pageInfo":o(u[W]&&u[W].iframe,W),function(){function e(e,i){function a(){u[t]?o(u[t].iframe,t):n()}["scroll","resize"].forEach((function(n){v(t,e+n+" listener for sendPageInfo"),i(window,n,a)}))}function n(){e("Remove ",g)}var t=W;e("Add ",p),u[t]&&(u[t].stopPageInfo=n)}();break;case"pageInfoStop":u[W]&&u[W].stopPageInfo&&(u[W].stopPageInfo(),delete u[W].stopPageInfo);break;case"inPageLink":t=i(9).split("#")[1]||"",r=decodeURIComponent(t),(s=document.getElementById(r)||document.getElementsByName(r)[0])?(e=a(s),v(W,"Moving to in page link (#"+t+") at x: "+e.x+" y: "+e.y),d={x:e.x,y:e.y},l(),v(W,"--")):window.top===window.self?v(W,"In page link #"+t+" not found"):window.parentIFrame?window.parentIFrame.moveToAnchor(t):v(W,"In page link #"+t+" not found and window.parentIFrame not found");break;case"reset":E(_);break;case"init":n(),m("onInit",_.iframe);break;default:0===Number(_.width)&&0===Number(_.height)?x("Unsupported message received ("+_.type+"), this is likely due to the iframe containing a later version of iframe-resizer than the parent page"):n()}var e,t,r,s,c}())):k(W,"Ignored: "+C)}function z(e,n,t){var i=null,o=null;if(u[e]){if("function"!=typeof(i=u[e][n]))throw new TypeError(n+" on iFrame["+e+"] is not a function");o=i(t)}return o}function M(e){delete u[e.id]}function F(e){var t=e.id;if(!1!==z(t,"onClose",t)){v(t,"Removing iFrame: "+t);try{e.parentNode&&e.parentNode.removeChild(e)}catch(e){x(e)}z(t,"onClosed",t),v(t,"--"),M(e),n&&(n.disconnect(),n=null)}else v(t,"Close iframe cancelled by onClose event")}function T(n){null===d&&v(n,"Get page position: "+(d={x:window.pageXOffset===e?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===e?document.documentElement.scrollTop:window.pageYOffset}).x+","+d.y)}function S(e){null!==d&&(window.scrollTo(d.x,d.y),v(e,"Set page position: "+d.x+","+d.y),R())}function R(){d=null}function E(e){v(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame")),T(e.id),N((function(){H(e),L("reset","reset",e.iframe,e.id)}),e,"reset")}function H(e){function n(n){a||"0"!==e[n]||(a=!0,v(i,"Hidden iFrame detected, creating visibility listener"),function(){function e(){Object.keys(u).forEach((function(e){!function(e){function n(n){return"0px"===(u[e]&&u[e].iframe.style[n])}u[e]&&null!==u[e].iframe.offsetParent&&(n("height")||n("width"))&&L("Visibility change","resize",u[e].iframe,e)}(e)}))}function n(n){v("window","Mutation observed: "+n[0].target+" "+n[0].type),_(e,16)}var t,i=w();i&&(t=document.querySelector("body"),new i(n).observe(t,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}))}())}function t(t){!function(n){e.id?(e.iframe.style[n]=e[n]+"px",v(e.id,"IFrame ("+i+") "+n+" set to "+e[n]+"px")):v("undefined","messageData id not set")}(t),n(t)}var i=e.iframe.id;u[i]&&(u[i].sizeHeight&&t("height"),u[i].sizeWidth&&t("width"))}function N(e,n,t){t!==n.type&&f&&!window.jasmine?(v(n.id,"Requesting animation frame"),f(e)):e()}function L(e,n,t,i,o){var a,r=!1;u[i=i||t.id]&&(t&&"contentWindow"in t&&null!==t.contentWindow?(v(i,"["+e+"] Sending msg to iframe["+i+"] ("+n+") targetOrigin: "+(a=u[i]&&u[i].targetOrigin)),t.contentWindow.postMessage(s+n,a)):x(i,"["+e+"] IFrame("+i+") not found"),o&&u[i]&&u[i].warningTimeout&&(u[i].msgTimeout=setTimeout((function(){!u[i]||u[i].loaded||r||(r=!0,x(i,"IFrame has not responded within "+u[i].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning."))}),u[i].warningTimeout)))}function V(e){return e+":"+u[e].bodyMarginV1+":"+u[e].sizeWidth+":"+u[e].log+":"+u[e].interval+":"+u[e].enablePublicMethods+":"+u[e].autoResize+":"+u[e].bodyMargin+":"+u[e].heightCalculationMethod+":"+u[e].bodyBackground+":"+u[e].bodyPadding+":"+u[e].tolerance+":"+u[e].inPageLinks+":"+u[e].resizeFrom+":"+u[e].widthCalculationMethod+":"+u[e].mouseEvents}function C(t,a){function r(e){var n=e.split("Callback");if(2===n.length){var t="on"+n[0].charAt(0).toUpperCase()+n[0].slice(1);this[t]=this[e],delete this[e],x(d,"Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version.")}}var s,c,d=function(e){if("string"!=typeof e)throw new TypeError("Invaild id for iFrame. Expected String");var n;return""===e&&(t.id=(n=a&&a.id||m.id+i++,null!==document.getElementById(n)&&(n+=i++),e=n),o=(a||{}).log,v(e,"Added missing iframe ID: "+e+" ("+t.src+")")),e}(t.id);d in u&&"iFrameResizer"in t?x(d,"Ignored iFrame, already setup."):(function(e){var n;e=e||{},u[d]=Object.create(null),u[d].iframe=t,u[d].firstRun=!0,u[d].remoteHost=t.src&&t.src.split("/").slice(0,3).join("/"),function(e){if("object"!=typeof e)throw new TypeError("Options is not an object")}(e),Object.keys(e).forEach(r,e),function(e){for(var n in m)Object.prototype.hasOwnProperty.call(m,n)&&(u[d][n]=Object.prototype.hasOwnProperty.call(e,n)?e[n]:m[n])}(e),u[d]&&(u[d].targetOrigin=!0===u[d].checkOrigin?""===(n=u[d].remoteHost)||null!==n.match(/^(about:blank|javascript:|file:\/\/)/)?"*":n:"*")}(a),function(){switch(v(d,"IFrame scrolling "+(u[d]&&u[d].scrolling?"enabled":"disabled")+" for "+d),t.style.overflow=!1===(u[d]&&u[d].scrolling)?"hidden":"auto",u[d]&&u[d].scrolling){case"omit":break;case!0:t.scrolling="yes";break;case!1:t.scrolling="no";break;default:t.scrolling=u[d]?u[d].scrolling:"no"}}(),function(){function e(e){var n=u[d][e];1/0!==n&&0!==n&&(t.style[e]="number"==typeof n?n+"px":n,v(d,"Set "+e+" = "+t.style[e]))}function n(e){if(u[d]["min"+e]>u[d]["max"+e])throw new Error("Value for min"+e+" can not be greater than max"+e)}n("Height"),n("Width"),e("maxHeight"),e("minHeight"),e("maxWidth"),e("minWidth")}(),"number"!=typeof(u[d]&&u[d].bodyMargin)&&"0"!==(u[d]&&u[d].bodyMargin)||(u[d].bodyMarginV1=u[d].bodyMargin,u[d].bodyMargin=u[d].bodyMargin+"px"),s=V(d),(c=w())&&(n=function(e){if(!t.parentNode)return null;var n=new e((function(e){e.forEach((function(e){Array.prototype.slice.call(e.removedNodes).forEach((function(e){e===t&&F(t)}))}))}));return n.observe(t.parentNode,{childList:!0}),n}(c)),p(t,"load",(function(){L("iFrame.onload",s,t,e,!0),(!u[d]||!u[d].firstRun)&&u[d]&&u[d].heightCalculationMethod in l&&E({iframe:t,height:0,width:0,type:"init"})})),L("init",s,t,e,!0),u[d]&&(u[d].iframe.iFrameResizer={close:F.bind(null,u[d].iframe),removeListeners:M.bind(null,u[d].iframe),resize:L.bind(null,"Window resize","resize",u[d].iframe),moveToAnchor:function(e){L("Move to anchor","moveToAnchor:"+e,u[d].iframe,d)},sendMessage:function(e){L("Send Message","message:"+(e=JSON.stringify(e)),u[d].iframe,d)}}))}function _(e,n){null===h&&(h=setTimeout((function(){h=null,e()}),n))}function W(){"hidden"!==document.visibilityState&&(v("document","Trigger event: Visibility change"),_((function(){A("Tab Visible","resize")}),16))}function A(e,n){Object.keys(u).forEach((function(t){(function(e){return u[e]&&"parent"===u[e].resizeFrom&&u[e].autoResize&&!u[e].firstRun})(t)&&L(e,n,u[t].iframe,t)}))}function P(){function n(e,n){n&&(function(){if(!n.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==n.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+n.tagName+">")}(),C(n,e),t.push(n))}var t;return function(){var e,n=["moz","webkit","o","ms"];for(e=0;e<n.length&&!f;e+=1)f=window[n[e]+"RequestAnimationFrame"];f?f=f.bind(window):v("setup","RequestAnimationFrame not supported")}(),p(window,"message",I),p(window,"resize",(function(){v("window","Trigger event: resize"),_((function(){A("Window resize","resize")}),16)})),p(document,"visibilitychange",W),p(document,"-webkit-visibilitychange",W),function(i,o){switch(t=[],function(e){e&&e.enablePublicMethods&&x("enablePublicMethods option has been removed, public methods are now always available in the iFrame")}(i),typeof o){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(o||"iframe"),n.bind(e,i));break;case"object":n(i,o);break;default:throw new TypeError("Unexpected data type ("+typeof o+")")}return t}}}();const F=M.exports;class T{constructor(e,n){this.iframe=e,this.iframeOrigin=n}postMessage(e,n){const t=Object.assign({eventType:e},n);this.iframe.contentWindow.postMessage(t,this.iframeOrigin)}addMessageListener(e){window.addEventListener("message",e)}removeMessageListener(e){window.removeEventListener("message",e)}postMessageWithResponseListener(e,n){return new Promise((t=>{const i=n=>{n.data.eventType===e&&(window.removeEventListener("message",i),t(n.data.data))};window.addEventListener("message",i),this.postMessage(e,n)}))}}const S=class{constructor(n){e(this,n),this.iframeLoaded=i(this,"iframeLoaded",7),this.dispatchMessageEvent=e=>{const{eventType:n,data:t}=e.data;(null==t?void 0:t.id)===this.inputId&&("focused"===n&&(this.isFocused=!0),"blurred"===n&&(this.isFocused=!1))},this.isFocused=!1,this.isValid=!0,this.errorText=void 0,this.inputId=void 0,this.label=void 0,this.iframeOrigin=void 0}disconnectedCallback(){this.frameService.removeMessageListener(this.dispatchMessageEvent)}async validate(){const e=await this.frameService.postMessageWithResponseListener("validate");return this.isValid=e.isValid,this.errorText=e.error.message,e}async tokenize(e,n,t){return this.frameService.postMessageWithResponseListener("tokenize",{clientId:e,paymentMethodMetadata:n,account:t,componentVersion:w.version})}initializeFrameCommunicationService(){var e;this.frameService=new T(this.iframeElement,this.iframeOrigin),null===(e=this.frameService)||void 0===e||e.addMessageListener(this.dispatchMessageEvent)}get part(){return this.isFocused&&!this.isValid?g:this.isValid?this.isFocused?v:k:y}get style(){return this.isFocused?this.isValid?p.focused:p.focusedAndInvalid:null}get urlParams(){const e=Object.fromEntries(Object.entries(p.fontStyles).map((([e,n])=>[e,btoa(String(n))])));return new URLSearchParams(e).toString()}render(){return n(t,{key:"0c7696f592d079436b8a91d33474f74de2922917",class:"form-group d-flex flex-column"},n("div",{key:"947cd055eb77e78ec719da130fab97ca093e4954",style:{visibility:this.iframeLoaded?"visible":"hidden",height:this.iframeLoaded?"auto":"0"}},n("label",{key:"59dfc89fb0ffb5163b9ea6c7eef12b1ff5bab5d2",class:"form-label",htmlFor:"",part:x},this.label||""),n("div",{key:"cad88a50d0381285a1c125e1331c3e401327554d",class:"p-0 d-flex form-control "+(this.isValid?"":"is-invalid"),part:this.part,style:Object.assign(Object.assign({},this.style),{overflow:"hidden"})},n("iframe",{key:"bf4af4cc965ddd4376b5780ea53824cb268c1952",id:this.inputId,name:this.inputId,src:`${this.iframeOrigin}?${this.urlParams}`,ref:e=>{this.iframeElement=e,this.initializeFrameCommunicationService()},width:"100%",onLoad:()=>{F({log:!1,onResized:()=>{this.iframeLoaded.emit()}},this.iframeElement)}})),n(b,{key:"785e5ad09f32240299116d906f5a5dbf3f03ed5e",errorText:this.errorText,name:this.inputId})))}get el(){return o(this)}},R=class{constructor(n){e(this,n),this.inputHandler=(e,n)=>{this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[e]:n}))},this.legend=void 0,this.formController=void 0,this.billingInfo=void 0,this.errors={}}componentWillLoad(){this.formController=new r(I)}componentDidLoad(){this.formController.values.subscribe((e=>this.billingInfo=Object.assign({},e))),this.formController.errors.subscribe((e=>{this.errors=Object.assign({},e)}))}async getValues(){return this.formController.values.getValue()}async fill(e){this.formController.setInitialValues(e)}async validate(){return{isValid:await this.formController.validate()}}render(){const e=this.formController.getInitialValues();return n(t,{key:"3d70df5d84e1ee5bf9dfac6802d363e06341174e"},n("form",{key:"f91ec1a5078461075c419be4402a8df393bae499"},n("fieldset",{key:"25ccb09388339cab44e70319c9d918c51d6049bf"},this.legend&&n("legend",{key:"292c52a34f7eba726121c68ced16e91d7f442b7f"},this.legend),n("div",{key:"a29e228daceb269c8d2137aed1cfe6db8eb7d821",class:"row gy-3"},n("div",{key:"b4bf02f82a7048051fe72c409da6612533ee2645",class:"col-12"},n("form-control-text",{key:"43ef0840e700024c2aeab32cf8e2f4bd3b360de6",name:"address_postal_code",label:"ZIP",defaultValue:e.address_postal_code,errorText:this.errors.address_postal_code,inputHandler:this.inputHandler,maxLength:5,keyDownHandler:h}))))))}};export{z as billing_form,S as iframe_input,R as postal_form}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,c as s,h as i}from"./p-2783e363.js";import{P as r}from"./p-536fb8e2.js";import{a as e,C as o}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import{P as a}from"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{g as p,a as n}from"./p-87f8c596.js";import{c,J as h}from"./p-3188f72a.js";import{S as d}from"./p-bfe9748b.js";import{d as m}from"./p-701a13ca.js";import"./p-5f6b4bc9.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-88a37837.js";import"./p-a5579f53.js";import"./p-c8b78136.js";import"./p-bf195b35.js";const f=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event",7),this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)},this.getPayments=void 0,this.errorMessage=null,this.accountId=void 0,this.authToken=void 0,this.apiOrigin="https://wc-proxy.justifi.ai",this.columns=m}componentWillLoad(){c(),this.analytics=new h(this),this.initializeGetPayments()}disconnectedCallback(){this.analytics.cleanup()}propChanged(){this.initializeGetPayments()}initializeGetPayments(){this.accountId&&this.authToken?this.getPayments=(({id:t,authToken:s,service:i,apiOrigin:r})=>async({params:o,onSuccess:c,onError:h,final:d})=>{var m,f;try{const d=await i.fetchPayments(t,s,o,r);if(d.error)return h({error:p(d.error),code:n(null===(f=d.error)||void 0===f?void 0:f.code),severity:e.ERROR});{const t=Object.assign({},d.page_info);c({payments:(null===(m=d.data)||void 0===m?void 0:m.map((t=>new a(t))))||[],pagingInfo:t})}}catch(t){const s=n(null==t?void 0:t.code);return h({error:t.message||t,code:s,severity:e.ERROR})}finally{return d()}})({id:this.accountId,authToken:this.authToken,service:new r,apiOrigin:this.apiOrigin}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:o.MISSING_PROPS,message:this.errorMessage,severity:e.ERROR}))}render(){return i(d,{key:"6882456e9e7af8dd5e8023cf649d967551689c20"},i("payments-list-core",{key:"7df305455ba20e2eede8c5146edb5db2e7c412c8",getPayments:this.getPayments,"onError-event":this.handleErrorEvent,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{f as justifi_payments_list}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as s,c as i,h as t,H as o}from"./p-2783e363.js";import{E as r}from"./p-12074378.js";import{B as e}from"./p-76549a24.js";import{m as p}from"./p-86605101.js";import{C as a,a as h}from"./p-9dd8685c.js";import{c as m,J as n}from"./p-
|
|
1
|
+
import{r as s,c as i,h as t,H as o}from"./p-2783e363.js";import{E as r}from"./p-12074378.js";import{B as e}from"./p-76549a24.js";import{m as p}from"./p-86605101.js";import{C as a,a as h}from"./p-9dd8685c.js";import{c as m,J as n}from"./p-3188f72a.js";import"./p-bf195b35.js";import"./p-5f6b4bc9.js";import"./p-5d1d2fd7.js";import"./p-1ff8810b.js";import"./p-6078a370.js";import"./p-87f8c596.js";import"./p-88a37837.js";const d=class{constructor(t){s(this,t),this.errorEvent=i(this,"error-event",7),this.businessId=void 0,this.authToken=void 0,this.errorMessage=void 0,this.getBusiness=void 0}componentWillLoad(){m(),this.analytics=new n(this),this.initializeGetBusiness()}disconnectedCallback(){this.analytics.cleanup()}initializeGetBusiness(){if(!this.businessId||!this.authToken)return this.errorMessage="Invalid business id or auth token",void this.errorEvent.emit({errorCode:a.MISSING_PROPS,message:this.errorMessage,severity:h.ERROR});this.getBusiness=p({id:this.businessId,authToken:this.authToken,service:new e})}render(){return t(o,null,this.errorMessage?r(this.errorMessage):t("business-details-core",{getBusiness:this.getBusiness}))}};export{d as justifi_business_details}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,c as t,h as a}from"./p-2783e363.js";import{c as s,a as i,F as r}from"./p-01033194.js";import{f as o}from"./p-f8fccf44.js";import{A as n}from"./p-5f6b4bc9.js";import{C as d,a as f}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{B as c}from"./p-bfc2d88a.js";import{S as u}from"./p-bfe9748b.js";import"./p-abdbcd8e.js";import"./p-bf195b35.js";const m=[{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"}],b=class{constructor(a){e(this,a),this.errorEvent=t(this,"error-event",7),this.submitEvent=t(this,"submit-event",7),this.authToken=void 0,this.paymentId=void 0,this.hideSubmitButton=!1,this.apiOrigin="https://wc-proxy.justifi.ai",this.paymentAmountRefundable=0,this.errorMessage=null,this.errors={},this.values={},this.isLoading=!1}componentWillLoad(){this.formController=new r((()=>{const e=+this.paymentAmountRefundable.toString();return s().shape({amount:i().required("Amount is required").typeError("Amount must be a number").test("amount",`Refund amount cannot be more than ${o(e)}`,(function(t){return+t<=e})).nullable()})})()),this.initializeApi()}componentDidLoad(){this.formController.errors.subscribe((e=>{this.errors=Object.assign({},e)})),this.formController.values.subscribe((e=>{this.values=Object.assign({},e)}))}async handleSubmit(e){e.preventDefault(),this.formController.validateAndSubmit(this.submitRefund)}async submitRefund(e){let t;this.isLoading=!0;try{t=await this.api.post(`payments/${this.paymentId}/refunds`,e)}catch(e){console.error("Error submitting refund:",e),this.errorEvent.emit(e)}finally{this.submitEvent.emit({response:t}),this.isLoading=!1}}handleInput(e,t){this.formController.setValues(Object.assign(Object.assign({},this.formController.values.getValue()),{[e]:t}))}initializeApi(){this.paymentId&&this.authToken?this.api=n({authToken:this.authToken,apiOrigin:"https://wc-proxy.justifi.ai"}):(this.errorMessage="Payment ID and Auth Token are required",this.errorEvent.emit({errorCode:d.MISSING_PROPS,message:this.errorMessage,severity:f.ERROR}))}render(){return a(u,{key:"ea0429d62ea383b6525251150978bb0ebfb2704e"},a("form",{key:"8f2e00b871ee896ba82311d8975574e5a2cbf6e3"},a("div",{key:"fa6476367e4a8b7fd7cdfff906671ef597b453de",class:"row gy-3"},a("div",{key:"72a48181200d6116ceb4bb511bdd33c8c8197742",class:"form-group"},a("form-control-monetary",{key:"f6a3b3a7d8d8c733cb032db96878ad64ff712356",name:"amount",label:"Refund Amount",inputHandler:(e,t)=>this.handleInput(e,t),errorText:this.errors.amount,defaultValue:this.paymentAmountRefundable.toString()})),a("div",{key:"47e6dc07510e192caf00ce959348a2a9472f48f8",class:"form-group"},a("form-control-select",{key:"9f9b761eea9964c7f6ac1dd907a4fee8cd63c906",label:"Reason for refund (optional)",options:m,name:"reason",defaultValue:""})),a("div",{key:"daa4bf44ec311e0554ea28f97a0932673d542a31",class:"form-group"},a("form-control-textarea",{key:"a03d055e6462b9a23e714ca58a942a6da0365919",name:"description",label:"Note (optional)",inputHandler:(e,t)=>this.handleInput(e,t),errorText:this.errors.description,maxLength:250})),a("div",{key:"b744d28ff0a2d6aa37b1ebe2b7ea6d9b3edbbc39",class:"form-group d-flex flex-row-reverse"},a(c,{key:"3f62881a5fa333277478d35a7c19a8c4ca8bb929",variant:"primary",type:"submit",onClick:e=>this.handleSubmit(e),isLoading:this.isLoading,hidden:this.hideSubmitButton},`Refund ${o(+this.values.amount)}`)))))}};export{b as justifi_refund_payment}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as r}from"./p-5f6b4bc9.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{A as r}from"./p-5f6b4bc9.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";class n{async fetchTerminals(n,t,s,i="https://wc-proxy.justifi.ai"){const a={Account:n};return r({authToken:t,apiOrigin:i}).get("terminals",s,null,a)}async fetchTerminal(n,t,s="https://wc-proxy.justifi.ai"){const i=`terminals/${n}`;return r({authToken:t,apiOrigin:s}).get(i)}async fetchTerminalModels(n,t,s=""){const i={"sub-account":n};return r({authToken:t,apiOrigin:s}).get("terminals/order_models",null,null,i)}async orderTerminals(n,t,s=""){const i={"sub-account":t.sub_account_id};return r({authToken:n,apiOrigin:s}).post("terminals/orders",t,null,null,i)}}export{n as T}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e={name:"@justifi/webcomponents",version:"5.4.
|
|
1
|
+
const e={name:"@justifi/webcomponents",version:"5.4.3",description:"JustiFi Web Components",collection:"dist/collection/collection-manifest.json",main:"dist/index.cjs.js",module:"dist/module/index.js",types:"dist/module/index.d.ts",repository:{type:"git",url:"git+https://github.com/justifi-tech/web-component-library.git"},homepage:"https://storybook.justifi.ai/?path=/docs/introduction--docs",publishConfig:{registry:"https://registry.npmjs.org"},files:["dist/"],scripts:{build:"stencil build --docs",dev:"stencil build --watch",lint:"eslint . --max-warnings 0",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",generate:"stencil generate",test:"TZ=utc stencil test --spec","test:watch":"TZ=utc stencil test --spec --watchAll","test:file":"stencil test --spec --watch --"},dependencies:{"@popperjs/core":"^2.11.8","@stencil/core":"^4.0.5","@stencil/store":"^2.0.8",bootstrap:"^5.2.3","chart.js":"^4.4.1","date-fns":"^2.30.0","dinero.js":"^1.9.1","iframe-resizer":"^4.3.7",imask:"^7.6.1",lodash:"^4.17.21",rxjs:"^7.8.1","ts-dedent":"^2.2.0",uuid:"^9.0.0",yup:"^1.0.0"},devDependencies:{"@babel/preset-env":"^7.21.5","@babel/preset-react":"^7.18.6","@babel/preset-typescript":"^7.21.5","@rollup/plugin-replace":"^6.0.1","@stencil/sass":"^3.0.1","@types/jest":"27.0.3","@types/react":"^18.0.37","@types/react-dom":"^18.0.11",dotenv:"^16.3.1",jest:"^29.7.0","jest-cli":"^29.7.0","jest-environment-node":"^29.7.0","ts-jest":"^29.1.2"},license:"MIT",gitHead:"507bac1d941eae6e1f56e185ecd9bc9d22637783"};export{e as p}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as s,c as t,h as r}from"./p-2783e363.js";import{A as i}from"./p-5f6b4bc9.js";import{a as o,C as e}from"./p-9dd8685c.js";import{g as a,a as h}from"./p-87f8c596.js";import{E as n}from"./p-12074378.js";import{c,J as p}from"./p-
|
|
1
|
+
import{r as s,c as t,h as r}from"./p-2783e363.js";import{A as i}from"./p-5f6b4bc9.js";import{a as o,C as e}from"./p-9dd8685c.js";import{g as a,a as h}from"./p-87f8c596.js";import{E as n}from"./p-12074378.js";import{c,J as p}from"./p-3188f72a.js";import"./p-bf195b35.js";import"./p-88a37837.js";class d{async fetchGrossVolumeChartData(s,t){return i({authToken:t,apiOrigin:"https://wc-proxy.justifi.ai"}).get(`account/${s}/reports/gross_volume`)}}const m=class{constructor(r){s(this,r),this.errorEvent=t(this,"error-event",7),this.handleErrorEvent=s=>{this.errorMessage=s.detail.message,this.errorEvent.emit(s.detail)},this.accountId=void 0,this.authToken=void 0,this.getGrossPayment=void 0,this.errorMessage=null}componentWillLoad(){c(),this.analytics=new p(this),this.initializeGetGrossPayment()}disconnectedCallback(){this.analytics.cleanup()}propChanged(){this.initializeGetGrossPayment()}initializeGetGrossPayment(){this.accountId&&this.authToken?this.getGrossPayment=(({id:s,authToken:t,service:r})=>async({onSuccess:i,onError:e})=>{var n;try{const c=await r.fetchGrossVolumeChartData(s,t);c.error?e({error:a(c.error),code:h(null===(n=c.error)||void 0===n?void 0:n.code),severity:o.ERROR}):i(c.data)}catch(s){const t=h(null==s?void 0:s.code);e({error:a(s),code:t,severity:o.ERROR})}})({id:this.accountId,authToken:this.authToken,service:new d}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:e.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}render(){return this.errorMessage?n(this.errorMessage):r("gross-payment-chart-core",{getGrossPayment:this.getGrossPayment,"onError-event":this.handleErrorEvent})}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{m as justifi_gross_payment_chart}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as s,h as i}from"./p-2783e363.js";import{P as e}from"./p-
|
|
1
|
+
import{r as t,c as s,h as i}from"./p-2783e363.js";import{P as e}from"./p-536fb8e2.js";import{a as r,C as o}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import{P as a}from"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{g as p,a as n}from"./p-87f8c596.js";import{E as h}from"./p-12074378.js";import{c,J as m}from"./p-3188f72a.js";import"./p-5f6b4bc9.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-bf195b35.js";import"./p-88a37837.js";const d=class{constructor(i){t(this,i),this.errorEvent=s(this,"error-event",7),this.paymentService=new e,this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)},this.paymentId=void 0,this.authToken=void 0,this.getPaymentDetails=void 0,this.errorMessage=null}componentWillLoad(){c(),this.analytics=new m(this),this.initializeGetPaymentDetails()}disconnectedCallback(){this.analytics.cleanup()}propChanged(){this.initializeGetPaymentDetails()}initializeGetPaymentDetails(){this.paymentId&&this.authToken?this.getPaymentDetails=(({id:t,authToken:s,service:i})=>async({onSuccess:e,onError:o})=>{var h;try{const c=await i.fetchPayment(t,s);c.error?o({error:p(c.error),code:n(null===(h=c.error)||void 0===h?void 0:h.code),severity:r.ERROR}):e({payment:new a(c.data)})}catch(t){const s=n(null==t?void 0:t.code);o({error:p(t),code:s,severity:r.ERROR})}})({id:this.paymentId,authToken:this.authToken,service:new e}):(this.errorMessage="Payment ID and Auth Token are required",this.errorEvent.emit({message:this.errorMessage,errorCode:o.MISSING_PROPS,severity:r.ERROR}))}render(){return this.errorMessage?h(this.errorMessage):i("payment-details-core",{getPaymentDetails:this.getPaymentDetails,"onError-event":this.handleErrorEvent})}static get watchers(){return{paymentId:["propChanged"],authToken:["propChanged"]}}};export{d as justifi_payment_details}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as t}from"./p-5f6b4bc9.js";import{a}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{A as t}from"./p-5f6b4bc9.js";import{a}from"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{g as r,a as o}from"./p-87f8c596.js";class s{async fetchPayouts(a,r,o,s="https://wc-proxy.justifi.ai"){return t({authToken:r,apiOrigin:s}).get(`account/${a}/payouts`,o)}async fetchPayout(a,r,o="https://wc-proxy.justifi.ai"){return t({authToken:r,apiOrigin:o}).get(`payouts/${a}`)}async fetchCSV(a,r,o="https://wc-proxy.justifi.ai"){return t({authToken:r,apiOrigin:o}).get(`reports/payouts/${a}`)}}const i=({authToken:t,service:s,apiOrigin:i})=>async({payoutId:p,onError:c})=>{try{const{data:a}=await s.fetchCSV(p,t,i),r=document.createElement("a");r.href=a.csv_url,r.click()}catch(t){c({error:r(t),code:o(null==t?void 0:t.code),severity:a.ERROR})}};export{s as P,i as m}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as t}from"./p-2783e363.js";import{k as e,m as a}from"./p-bf195b35.js";import{d as r}from"./p-f8fccf44.js";import{B as s,a as d}from"./p-c8b78136.js";const o="created_at,updated_at,order_status,quantity",i={created_at:()=>t("th",{part:e,scope:"col",title:"The date and time the order was created"},"Created At"),updated_at:()=>t("th",{part:e,scope:"col",title:"The date and time the order was last updated"},"Updated At"),order_status:()=>t("th",{part:e,scope:"col",title:"The current status of the order"},"Order Status"),business_id:()=>t("th",{part:e,scope:"col",title:"The business ID associated with the order"},"Business ID"),company_name:()=>t("th",{part:e,scope:"col",title:"The business name associated with the order"},"Business Name"),provider:()=>t("th",{part:e,scope:"col",title:"The provider associated with the order"},"Provider"),order_type:()=>t("th",{part:e,scope:"col",title:"The type of order"},"Order Type"),quantity:()=>t("th",{part:e,scope:"col",title:"The number of terminals associated with the order"},"Order Quantity")},p={created_at:(e,s)=>t("td",{part:a(s)},t("div",{class:"fw-bold"},r(e.created_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},r(e.created_at,{showTime:!0}))),updated_at:(e,s)=>t("td",{part:a(s)},t("div",{class:"fw-bold"},r(e.updated_at,{showDisplayDate:!0})),t("div",{class:"fw-bold"},r(e.updated_at,{showTime:!0}))),order_status:(e,r)=>t("td",{part:a(r)},t(s,Object.assign({},{submitted:{variant:d.PRIMARY,title:"This order is submitted",text:"Submitted"},completed:{variant:d.SUCCESS,title:"This order has been completed",text:"Completed"},created:{variant:d.SECONDARY,title:"This order is created",text:"Created"}}[e.order_status]))),business_id:(e,r)=>t("td",{part:a(r)},e.business_id),company_name:(e,r)=>t("td",{part:a(r)},e.company_name),provider:(e,r)=>t("td",{part:a(r)},e.provider),order_type:(e,r)=>t("td",{part:a(r)},e.order_type),quantity:(e,r)=>t("td",{part:a(r)},e.terminals.length)};export{p as a,o as d,i as t}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e,c as t,h as s}from"./p-2783e363.js";import{f as i}from"./p-f8fccf44.js";import{t as a,C as r}from"./p-bf195b35.js";import{B as d}from"./p-bfc2d88a.js";import{S as c}from"./p-bfe9748b.js";import{S as o}from"./p-56c7fc8d.js";import{a as n,C as h}from"./p-9dd8685c.js";import{g as p,a as f}from"./p-87f8c596.js";import{D as l}from"./p-3da2652e.js";import{D as u}from"./p-667ebd79.js";import{c as b,J as y}from"./p-9c4e3bac.js";import"./p-5f6b4bc9.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-abdbcd8e.js";import"./p-0d7d61ac.js";import"./p-61f0a2ce.js";import"./p-b99817a0.js";const v=({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=(()=>{})})=>{var c;try{const d=await s.submitDisputeResponse(t,e,i);if(d.error){return r({error:p(d.error),code:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR})}a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}},m=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.submitEvent=t(this,"submit-event",7),this.dispute=void 0,this.authToken=void 0,this.isLoading=void 0}acceptDispute(){v({disputeId:this.dispute.id,authToken:this.authToken,service:new l})({payload:{forfeit:!0},onSuccess:e=>{this.submitEvent.emit({response:e})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}})}initiateRespondToDispute(){this.clickEvent.emit({name:u.respondToDispute})}render(){var e,t,n,h,p,f,l;return s(c,{key:"ad76721d05d9dcdfb643d865aec1a6f0684e1e05"},this.isLoading&&s("div",{key:"a8b8e850e168cba9281a6f6302aef53976027346",style:{marginBottom:"8px"}},s(o,{key:"813563746b9f9b507b49762c9e1a1f006765345b",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(o,{key:"373c0596e6246860a17822eb5ec49f3ef9e37460",height:"18px",styles:{marginBottom:"8px"}}),s(o,{key:"32f8083f0551fbea29de6ddbc847dc62fa0b0c48",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&s("div",{key:"9c032d9b8ea4b176f1fabfff45a2975ac9e6df17",part:a},s("h1",{key:"e1a906047a9c056138bb2bd69dddf2bbc54782c4",class:"h4",part:r},"This payment is disputed"),s("p",{key:"40d9d799d073318ba52a2c559c8119c64e9107aa"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"e2d3bc21f03cd47acc8feec8640410c1c74f9b58",class:"h5"},"Dispute details"),s("div",{key:"3e3c440350a6dc86b42204a43f80fa700c1d06f0",class:"d-table gap-2"},s("div",{key:"67b4dbf945dae00fe6e6144782c6c249cc032968",class:"d-table-row gap-2"},s("span",{key:"6570c2fc92f6a526a6e2afee91fa1017f5ef3c9b",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"269f42e3737b419978fb35e741f34a751f0b0d9b",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(t=this.dispute)||void 0===t?void 0:t.amount))),s("div",{key:"b498ff565dafbea3e3452d386883924bda431a96",class:"d-table-row gap-2"},s("span",{key:"afaecceeac44807453e1a99ffc0d8961022fd98f",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"69b491d454f791d679528b77f9f75fc889add363",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(n=this.dispute)||void 0===n?void 0:n.reason)),s("div",{key:"97515b0bd0dd113e31e6974c7e107af19eed2e73",class:"d-table-row gap-2"},s("span",{key:"e8a46a99bb2596d8aab980230088989c3a9455c4",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Dispute ID"),s("span",{key:"aa5e2e6997bedfdbd31c2fe9ee540a4399e3a25e",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(h=this.dispute)||void 0===h?void 0:h.id))),s("div",{key:"4e35b26867fdde02426bd047932ca854c05421b7",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"2881172b26ffb36321094ea2f8af7cc622678229",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"e57fca0b48327bb898ec19938498eb1c945bbb4d",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(p=this.dispute)||void 0===p?void 0:p.underReview)&&s("div",{key:"c1f0a2f35d9640efdfd76b13d6969374169b2631"},s("h1",{key:"800d59ebecc9f15890fe7f264a3b44910e322784",class:"h4"},"This payment is disputed and under review"),s("p",{key:"30a7d186c01e33f2a95b0cecb3a4a69b59d158e6"},"The cardholder is disputing this payment. A counter dispute has been submitted and is under review.")),(null===(f=this.dispute)||void 0===f?void 0:f.won)&&s("div",{key:"5d0fbdcc7a15817e1875d18a5f4d9cf982989ed1"},s("h1",{key:"b2814587c7bd46e28948346f5871456e6cc0589c",class:"h4"},"This payment was disputed"),s("p",{key:"bff6dbf512017e27b1fc6ea2a97b2dc47f4b2a65"},"The cardholder disputed this payment and the card issuer has settled it in your favor.")),(null===(l=this.dispute)||void 0===l?void 0:l.lost)&&s("div",{key:"548cf8e95c0933ec987862c162487abfd3c043bc"},s("h1",{key:"46f96b5e6785b5a4398918c0e29302403a7194bd",class:"h4"},"This payment was disputed"),s("p",{key:"71c3c1e1754cd0f0f042a6277ba93b2076cd7645"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},k=class{constructor(s){e(this,s),this.errorEvent=t(this,"error-event",7),this.handleErrorEvent=e=>{this.errorMessage=e.detail.message,this.errorEvent.emit(e.detail)},this.updateDisputeResponse=void 0,this.submitDisputeResponse=void 0,this.createDisputeEvidence=void 0,this.errorMessage=null,this.authToken=void 0,this.disputeId=void 0,this.disputeResponse=void 0,this.apiOrigin="https://wc-proxy.justifi.ai"}componentWillLoad(){b(),this.analytics=new y(this),this.initializeDisputeServiceMethods()}disconnectedCallback(){this.analytics.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:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.createDisputeEvidence=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=(()=>{})})=>{var c;try{const d=await s.createDisputeEvidence(t,e,i);if(d.error)return r({error:p(d.error),code:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.submitDisputeResponse=v({disputeId:this.disputeId,authToken:this.authToken,service:new l})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:h.MISSING_PROPS,message:this.errorMessage,severity:n.ERROR}))}render(){return s(c,{key:"1a0ac889493d8008e9bd70e4c3aad9ea72d12453"},s("justifi-dispute-response-core",{key:"82e11a3f0d14640beca1ebed72364662db3ffdbd","onError-event":this.handleErrorEvent,"dispute-id":this.disputeId,disputeResponse:this.disputeResponse,createDisputeEvidence:this.createDisputeEvidence,updateDisputeResponse:this.updateDisputeResponse,submitDisputeResponse:this.submitDisputeResponse}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}},j=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event",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.componentStepMapping=[()=>s("justifi-product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-additional-statement",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors})],this.saveData=async(e,t)=>{if(Object.keys(e).length)return this.isLastStep?this.submitDisputeResponse({payload:e,onSuccess:e=>{this.submitEvent.emit({response:e}),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}}):this.updateDisputeResponse({payload:e,onSuccess:e=>{this.disputeResponse=Object.assign({},e.data),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}});this.stepCompleteEvent.emit({response:null,formStep:t})},this.initializeMakePresignedURLs=async()=>{const e=this.documentList.map((e=>this.getPresignedFileUrl(e)));return await Promise.all(e)},this.initializeFileUploads=async()=>{const e=this.documentList.map((e=>this.uploadDocument(e)));return Promise.all(e)},this.getPresignedFileUrl=async e=>this.createDisputeEvidence({payload:{file_name:e.file_name,file_type:e.file_type,dispute_evidence_type:e.dispute_evidence_type},onSuccess:t=>{e.presignedUrl=t.data.presigned_url},onError:({error:t,code:s,severity:i})=>{const a={[e.dispute_evidence_type]:t};this.documentErrors=Object.assign(Object.assign({},this.documentErrors),a),this.errorEvent.emit({errorCode:s,message:t,severity:i})}}),this.uploadDocument=async e=>{const t=await e.getFileString();if(!e.presignedUrl)throw new Error("Presigned URL is not set");return await fetch(e.presignedUrl,{method:"PUT",body:t})},this.handleSubmit=async(e,t,s)=>{if(this.isLoading=!0,t.length){if(this.documentErrors={},this.documentList=t,await this.initializeMakePresignedURLs(),Object.keys(this.documentErrors).length)throw this.isLoading=!1,new Error("Could not presign all documents");await this.initializeFileUploads()}await this.saveData(e,s),this.isLoading=!1},this.onCancel=()=>{this.clickEvent.emit({name:u.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))},this.updateDisputeResponse=void 0,this.submitDisputeResponse=void 0,this.createDisputeEvidence=void 0,this.disputeResponse={},this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.currentStepComponentRef=void 0}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:"1f44d3fa1d95758e9dc949bc9df9cb8def59aae5",class:"row gy-3"},s("div",{key:"5245e71606a4f69a8978c27bf8d0a985ecf3b835",class:"col-12"},s("h1",{key:"e843ee37344171cb159fe83889ddc244487d49ed",class:"h4",part:r},"Counter dispute")),s("div",{key:"7680b28f96255822f3048dc529bafa71cebf81cc",class:"col-12"},this.currentStepComponent),s("div",{key:"3ce0c6ac049c64a3ed18e42dcc001dd1f62a5aed",class:"col-12"},s("div",{key:"2192e17c236024e2c89ea361ac1a4e2b57c6b50e",class:"d-flex gap-2 mt-4 justify-content-end"},this.isFirstStep?s(d,{variant:"secondary",onClick:()=>this.onCancel(),disabled:this.isLoading,isLoading:this.isLoading},"Cancel"):s(d,{variant:"secondary",onClick:()=>this.onBack(),disabled:this.isLoading,isLoading:this.isLoading},"Back"),this.isLastStep?s(d,{variant:"primary",onClick:()=>this.onSubmit(),disabled:this.isLoading,isLoading:this.isLoading},"Submit Counter Dispute"):s(d,{variant:"primary",onClick:()=>this.onNext(),disabled:this.isLoading,isLoading:this.isLoading},"Next"))))}};export{m as justifi_dispute_notification,k as justifi_dispute_response,j as justifi_dispute_response_core}
|
|
1
|
+
import{r as e,c as t,h as s}from"./p-2783e363.js";import{f as i}from"./p-f8fccf44.js";import{t as a,C as r}from"./p-bf195b35.js";import{B as d}from"./p-bfc2d88a.js";import{S as c}from"./p-bfe9748b.js";import{S as o}from"./p-56c7fc8d.js";import{a as n,C as h}from"./p-9dd8685c.js";import{g as p,a as f}from"./p-87f8c596.js";import{D as l}from"./p-f4aeb100.js";import{D as u}from"./p-667ebd79.js";import{c as b,J as y}from"./p-3188f72a.js";import"./p-5f6b4bc9.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-abdbcd8e.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import"./p-88a37837.js";const v=({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=(()=>{})})=>{var c;try{const d=await s.submitDisputeResponse(t,e,i);if(d.error){return r({error:p(d.error),code:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR})}a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}},m=class{constructor(s){e(this,s),this.clickEvent=t(this,"click-event",7),this.errorEvent=t(this,"error-event",7),this.submitEvent=t(this,"submit-event",7),this.dispute=void 0,this.authToken=void 0,this.isLoading=void 0}acceptDispute(){v({disputeId:this.dispute.id,authToken:this.authToken,service:new l})({payload:{forfeit:!0},onSuccess:e=>{this.submitEvent.emit({response:e})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}})}initiateRespondToDispute(){this.clickEvent.emit({name:u.respondToDispute})}render(){var e,t,n,h,p,f,l;return s(c,{key:"ad76721d05d9dcdfb643d865aec1a6f0684e1e05"},this.isLoading&&s("div",{key:"a8b8e850e168cba9281a6f6302aef53976027346",style:{marginBottom:"8px"}},s(o,{key:"813563746b9f9b507b49762c9e1a1f006765345b",height:"28px",width:"70%",styles:{marginBottom:"16px"}}),s(o,{key:"373c0596e6246860a17822eb5ec49f3ef9e37460",height:"18px",styles:{marginBottom:"8px"}}),s(o,{key:"32f8083f0551fbea29de6ddbc847dc62fa0b0c48",height:"18px",styles:{marginBottom:"8px"}})),(null===(e=this.dispute)||void 0===e?void 0:e.needsResponse)&&s("div",{key:"9c032d9b8ea4b176f1fabfff45a2975ac9e6df17",part:a},s("h1",{key:"e1a906047a9c056138bb2bd69dddf2bbc54782c4",class:"h4",part:r},"This payment is disputed"),s("p",{key:"40d9d799d073318ba52a2c559c8119c64e9107aa"},"The cardholder is disputing this payment. You may accept this dispute, or proceed to provide evidence in a counter dispute."),s("h2",{key:"e2d3bc21f03cd47acc8feec8640410c1c74f9b58",class:"h5"},"Dispute details"),s("div",{key:"3e3c440350a6dc86b42204a43f80fa700c1d06f0",class:"d-table gap-2"},s("div",{key:"67b4dbf945dae00fe6e6144782c6c249cc032968",class:"d-table-row gap-2"},s("span",{key:"6570c2fc92f6a526a6e2afee91fa1017f5ef3c9b",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Amount"),s("span",{key:"269f42e3737b419978fb35e741f34a751f0b0d9b",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},i(null===(t=this.dispute)||void 0===t?void 0:t.amount))),s("div",{key:"b498ff565dafbea3e3452d386883924bda431a96",class:"d-table-row gap-2"},s("span",{key:"afaecceeac44807453e1a99ffc0d8961022fd98f",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Reason"),s("span",{key:"69b491d454f791d679528b77f9f75fc889add363",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(n=this.dispute)||void 0===n?void 0:n.reason)),s("div",{key:"97515b0bd0dd113e31e6974c7e107af19eed2e73",class:"d-table-row gap-2"},s("span",{key:"e8a46a99bb2596d8aab980230088989c3a9455c4",part:"detail-section-item-title",class:"fw-bold d-table-cell pe-4"},"Dispute ID"),s("span",{key:"aa5e2e6997bedfdbd31c2fe9ee540a4399e3a25e",part:"detail-section-item-data",class:"flex-1 d-table-cell text-wrap"},null===(h=this.dispute)||void 0===h?void 0:h.id))),s("div",{key:"4e35b26867fdde02426bd047932ca854c05421b7",class:"d-flex gap-2 mt-4 justify-content-end"},s(d,{key:"2881172b26ffb36321094ea2f8af7cc622678229",variant:"secondary",onClick:()=>this.acceptDispute()},"Accept dispute"),s(d,{key:"e57fca0b48327bb898ec19938498eb1c945bbb4d",variant:"primary",onClick:()=>this.initiateRespondToDispute()},"Counter dispute"))),(null===(p=this.dispute)||void 0===p?void 0:p.underReview)&&s("div",{key:"c1f0a2f35d9640efdfd76b13d6969374169b2631"},s("h1",{key:"800d59ebecc9f15890fe7f264a3b44910e322784",class:"h4"},"This payment is disputed and under review"),s("p",{key:"30a7d186c01e33f2a95b0cecb3a4a69b59d158e6"},"The cardholder is disputing this payment. A counter dispute has been submitted and is under review.")),(null===(f=this.dispute)||void 0===f?void 0:f.won)&&s("div",{key:"5d0fbdcc7a15817e1875d18a5f4d9cf982989ed1"},s("h1",{key:"b2814587c7bd46e28948346f5871456e6cc0589c",class:"h4"},"This payment was disputed"),s("p",{key:"bff6dbf512017e27b1fc6ea2a97b2dc47f4b2a65"},"The cardholder disputed this payment and the card issuer has settled it in your favor.")),(null===(l=this.dispute)||void 0===l?void 0:l.lost)&&s("div",{key:"548cf8e95c0933ec987862c162487abfd3c043bc"},s("h1",{key:"46f96b5e6785b5a4398918c0e29302403a7194bd",class:"h4"},"This payment was disputed"),s("p",{key:"71c3c1e1754cd0f0f042a6277ba93b2076cd7645"},"The cardholder disputed this payment and the card issuer has settled it in their favor.")))}},k=class{constructor(s){e(this,s),this.errorEvent=t(this,"error-event",7),this.handleErrorEvent=e=>{this.errorMessage=e.detail.message,this.errorEvent.emit(e.detail)},this.updateDisputeResponse=void 0,this.submitDisputeResponse=void 0,this.createDisputeEvidence=void 0,this.errorMessage=null,this.authToken=void 0,this.disputeId=void 0,this.disputeResponse=void 0,this.apiOrigin="https://wc-proxy.justifi.ai"}componentWillLoad(){b(),this.analytics=new y(this),this.initializeDisputeServiceMethods()}disconnectedCallback(){this.analytics.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:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.createDisputeEvidence=(({authToken:e,disputeId:t,service:s})=>async({payload:i,onSuccess:a,onError:r,final:d=(()=>{})})=>{var c;try{const d=await s.createDisputeEvidence(t,e,i);if(d.error)return r({error:p(d.error),code:f(null===(c=d.error)||void 0===c?void 0:c.code),severity:n.ERROR});a(d)}catch(e){const t=f(null==e?void 0:e.code);return r({error:e.message||e,code:t,severity:n.ERROR})}finally{return d()}})({disputeId:this.disputeId,authToken:this.authToken,service:new l}),this.submitDisputeResponse=v({disputeId:this.disputeId,authToken:this.authToken,service:new l})):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:h.MISSING_PROPS,message:this.errorMessage,severity:n.ERROR}))}render(){return s(c,{key:"1a0ac889493d8008e9bd70e4c3aad9ea72d12453"},s("justifi-dispute-response-core",{key:"82e11a3f0d14640beca1ebed72364662db3ffdbd","onError-event":this.handleErrorEvent,"dispute-id":this.disputeId,disputeResponse:this.disputeResponse,createDisputeEvidence:this.createDisputeEvidence,updateDisputeResponse:this.updateDisputeResponse,submitDisputeResponse:this.submitDisputeResponse}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}},j=class{constructor(i){e(this,i),this.clickEvent=t(this,"click-event",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.componentStepMapping=[()=>s("justifi-product-or-service",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-customer-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-cancellation-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-refund-policy",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-duplicate-charge",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-electronic-evidence",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-shipping-details",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors}),()=>s("justifi-additional-statement",{ref:e=>this.currentStepComponentRef=e,disputeResponse:this.disputeResponse,documentErrors:this.documentErrors})],this.saveData=async(e,t)=>{if(Object.keys(e).length)return this.isLastStep?this.submitDisputeResponse({payload:e,onSuccess:e=>{this.submitEvent.emit({response:e}),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}}):this.updateDisputeResponse({payload:e,onSuccess:e=>{this.disputeResponse=Object.assign({},e.data),this.stepCompleteEvent.emit({response:e,formStep:t})},onError:({error:e,code:t,severity:s})=>{this.errorEvent.emit({errorCode:t,message:e,severity:s})}});this.stepCompleteEvent.emit({response:null,formStep:t})},this.initializeMakePresignedURLs=async()=>{const e=this.documentList.map((e=>this.getPresignedFileUrl(e)));return await Promise.all(e)},this.initializeFileUploads=async()=>{const e=this.documentList.map((e=>this.uploadDocument(e)));return Promise.all(e)},this.getPresignedFileUrl=async e=>this.createDisputeEvidence({payload:{file_name:e.file_name,file_type:e.file_type,dispute_evidence_type:e.dispute_evidence_type},onSuccess:t=>{e.presignedUrl=t.data.presigned_url},onError:({error:t,code:s,severity:i})=>{const a={[e.dispute_evidence_type]:t};this.documentErrors=Object.assign(Object.assign({},this.documentErrors),a),this.errorEvent.emit({errorCode:s,message:t,severity:i})}}),this.uploadDocument=async e=>{const t=await e.getFileString();if(!e.presignedUrl)throw new Error("Presigned URL is not set");return await fetch(e.presignedUrl,{method:"PUT",body:t})},this.handleSubmit=async(e,t,s)=>{if(this.isLoading=!0,t.length){if(this.documentErrors={},this.documentList=t,await this.initializeMakePresignedURLs(),Object.keys(this.documentErrors).length)throw this.isLoading=!1,new Error("Could not presign all documents");await this.initializeFileUploads()}await this.saveData(e,s),this.isLoading=!1},this.onCancel=()=>{this.clickEvent.emit({name:u.cancelDispute})},this.onBack=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.previousStep}),await this.handleSubmit(e,t,s),this.currentStep--}))},this.onNext=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.nextStep}),await this.handleSubmit(e,t,s),this.currentStep++}))},this.onSubmit=async()=>{await this.currentStepComponentRef.validateAndSubmit((async(e,t,s)=>{this.clickEvent.emit({name:u.submit});const i=Object.assign(Object.assign({},e),{forfeit:!1});await this.handleSubmit(i,t,s)}))},this.updateDisputeResponse=void 0,this.submitDisputeResponse=void 0,this.createDisputeEvidence=void 0,this.disputeResponse={},this.isLoading=!1,this.documentList=[],this.documentErrors={},this.currentStep=0,this.currentStepComponentRef=void 0}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:"1f44d3fa1d95758e9dc949bc9df9cb8def59aae5",class:"row gy-3"},s("div",{key:"5245e71606a4f69a8978c27bf8d0a985ecf3b835",class:"col-12"},s("h1",{key:"e843ee37344171cb159fe83889ddc244487d49ed",class:"h4",part:r},"Counter dispute")),s("div",{key:"7680b28f96255822f3048dc529bafa71cebf81cc",class:"col-12"},this.currentStepComponent),s("div",{key:"3ce0c6ac049c64a3ed18e42dcc001dd1f62a5aed",class:"col-12"},s("div",{key:"2192e17c236024e2c89ea361ac1a4e2b57c6b50e",class:"d-flex gap-2 mt-4 justify-content-end"},this.isFirstStep?s(d,{variant:"secondary",onClick:()=>this.onCancel(),disabled:this.isLoading,isLoading:this.isLoading},"Cancel"):s(d,{variant:"secondary",onClick:()=>this.onBack(),disabled:this.isLoading,isLoading:this.isLoading},"Back"),this.isLastStep?s(d,{variant:"primary",onClick:()=>this.onSubmit(),disabled:this.isLoading,isLoading:this.isLoading},"Submit Counter Dispute"):s(d,{variant:"primary",onClick:()=>this.onNext(),disabled:this.isLoading,isLoading:this.isLoading},"Next"))))}};export{m as justifi_dispute_notification,k as justifi_dispute_response,j as justifi_dispute_response_core}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,c as i,h as s}from"./p-2783e363.js";import{a as o,C as e}from"./p-9dd8685c.js";import{C as r}from"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{g as a,a as c}from"./p-87f8c596.js";import{c as h,J as n}from"./p-3188f72a.js";import{C as p}from"./p-54556fc6.js";import{m as d,S as m}from"./p-cbad44b7.js";import{S as u}from"./p-bfe9748b.js";import{d as f}from"./p-ca6cdfe6.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-88a37837.js";import"./p-5f6b4bc9.js";import"./p-c8b78136.js";import"./p-bf195b35.js";const b=class{constructor(s){t(this,s),this.errorEvent=i(this,"error-event",7),this.handleErrorEvent=t=>{this.errorMessage=t.detail.message,this.errorEvent.emit(t.detail)},this.getCheckouts=void 0,this.getSubAccounts=void 0,this.errorMessage=null,this.accountId=void 0,this.authToken=void 0,this.apiOrigin="https://wc-proxy.justifi.ai",this.columns=f}componentWillLoad(){h(),this.analytics=new n(this),this.initializeGetData()}disconnectedCallback(){this.analytics.cleanup()}propChanged(){this.initializeGetData()}initializeGetData(){this.initializeGetCheckouts(),this.initializeGetSubAccounts()}initializeGetCheckouts(){this.accountId&&this.authToken?this.getCheckouts=(({accountId:t,authToken:i,service:s,apiOrigin:e})=>async({params:h,onSuccess:n,onError:p})=>{var d,m;try{const u=await s.fetchCheckouts(t,i,h,e);if(u.error)return p({error:a(u.error),code:c(null===(m=u.error)||void 0===m?void 0:m.code),severity:o.ERROR});{const t=Object.assign({},u.page_info);n({checkouts:(null===(d=u.data)||void 0===d?void 0:d.map((t=>new r(t))))||[],pagingInfo:t})}}catch(t){const i=c(null==t?void 0:t.code);return p({error:t.message||t,code:i,severity:o.ERROR})}})({accountId:this.accountId,authToken:this.authToken,service:new p,apiOrigin:this.apiOrigin}):(this.errorMessage="Account ID and Auth Token are required",this.errorEvent.emit({errorCode:e.MISSING_PROPS,message:this.errorMessage,severity:o.ERROR}))}initializeGetSubAccounts(){this.accountId&&this.authToken&&(this.getSubAccounts=d({accountId:this.accountId,authToken:this.authToken,service:new m,apiOrigin:this.apiOrigin}))}render(){return s(u,{key:"072e2dc9373eef92119a0b0a01b61615d3bdcec0"},s("checkouts-list-core",{key:"84027904ba2baf57aa22247c553ab585d0d71262",getCheckouts:this.getCheckouts,getSubAccounts:this.getSubAccounts,"onError-event":this.handleErrorEvent,columns:this.columns}))}static get watchers(){return{accountId:["propChanged"],authToken:["propChanged"]}}};export{b as justifi_checkouts_list}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e,h as t,H as s,c as a,g as i}from"./p-2783e363.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{r as e,h as t,H as s,c as a,g as i}from"./p-2783e363.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import{E as c}from"./p-61f0a2ce.js";import{c as o}from"./p-c9b78275.js";import"./p-73f9be7c.js";import{n as d}from"./p-e3c22aa9.js";import{s as r,b as l,m as n}from"./p-f8fccf44.js";import{a6 as b,h as f,V as h,k as p,W as m,l as u,c as y,b as k,$ as v,a as x}from"./p-bf195b35.js";import{S as _}from"./p-56c7fc8d.js";import{F as g}from"./p-dbc1a95b.js";import"./p-abdbcd8e.js";import"./p-5d1d2fd7.js";import"./p-1ff8810b.js";import"./p-6078a370.js";const j=class{constructor(t){e(this,t),this.inputHandler=void 0,this.errors=void 0,this.storeFiles=void 0}render(){return t("div",{key:"a3ff8b1ff23923beb847e66d6c56a39de9a86434",class:"row gy-3"},t("div",{key:"86f9ba3a8f0f87f7fa67ba0fcf1d7c04f67e9bc5",class:"col-12"},t("form-control-file",{key:"9cc2bc21414c8e3f4b25ac47b76340a4ce569c42",name:"voided_check",label:"Voided Check",documentType:c.voidedCheck,inputHandler:this.inputHandler,onFileSelected:this.storeFiles,errorText:this.errors.voided_check,multiple:!0})),t("div",{key:"bee72d6c63514cdbd3200910d3a53b045c60d05d",class:"col-12"},t("form-control-file",{key:"80a79f352d078cd210768b4060cad7014b1060c5",name:"bank_statement",label:"Bank Statement",documentType:c.bankStatement,inputHandler:this.inputHandler,onFileSelected:this.storeFiles,errorText:this.errors.bank_statement,multiple:!0})))}},T=class{constructor(t){e(this,t),this.defaultValue=void 0,this.errors=void 0,this.inputHandler=void 0,this.formDisabled=void 0}render(){return t("div",{key:"b18e803521d67b40e4e5af03a66dcdca0b678968",class:"row gy-3"},t("div",{key:"e2e6667ffbcebb6a9aa50739814e7bbebceaabfa",class:"col-12"},t("form-control-text",{key:"e1ad63fb7db32dbb6ed67cf18919c681d6d192ef",name:"bank_name",label:"Bank Name",defaultValue:this.defaultValue.bank_name,errorText:this.errors.bank_name,inputHandler:this.inputHandler,disabled:this.formDisabled})),t("div",{key:"54db821813e7eb931b8f19fad7fce976cdeb0045",class:"col-12"},t("form-control-text",{key:"4ecf222c1918e364f319d07e0a770d68dba099d0",name:"nickname",label:"Nickname",defaultValue:this.defaultValue.nickname,errorText:this.errors.nickname,inputHandler:this.inputHandler,disabled:this.formDisabled})),t("div",{key:"a92c38f2abbcb3dcaee4bc5ea73df44b31adc3f9",class:"col-12"},t("form-control-text",{key:"492ff1a4d1e9c4f2fa9d0e527a34dc5ccb09afe6",name:"account_owner_name",label:"Account Owner Name",defaultValue:this.defaultValue.account_owner_name,errorText:this.errors.account_owner_name,inputHandler:this.inputHandler,disabled:this.formDisabled})),t("div",{key:"8e14e6e3de43822d139085d3a05bfd0e7ae5b1be",class:"col-12"},t("form-control-select",{key:"f6648b6f7c4a475f88b849bf3a75d446bb539c69",name:"account_type",label:"Account Type",options:o,defaultValue:this.defaultValue.account_type,errorText:this.errors.account_type,inputHandler:this.inputHandler,disabled:this.formDisabled})),t("div",{key:"68a2efc082f5b6414ebde10b6da4365677dbefca",class:"col-12"},t("form-control-text",{key:"3ef9b3db5882063708ccf1eb282f3e90ed53ce82",name:"account_number",label:"Account Number",defaultValue:this.defaultValue.account_number,maxLength:17,errorText:this.errors.account_number,inputHandler:this.inputHandler,keyDownHandler:d,disabled:this.formDisabled,helpText:"Please copy the account number as shown on your statement/check. Do not include spaces or dashes."})),t("div",{key:"e3270db28269bc25dd4d5a99274f042c1efd1fc6",class:"col-12"},t("form-control-text",{key:"a8e801f65a4cc164cdc7bf186fed67f87abc828f",name:"routing_number",label:"Routing Number",defaultValue:this.defaultValue.routing_number,maxLength:9,errorText:this.errors.routing_number,inputHandler:this.inputHandler,keyDownHandler:d,disabled:this.formDisabled,helpText:"A valid routing number is nine digits. Please include any leading or trailing zeroes."})))}},w=class{constructor(t){e(this,t),this.documents=[],this.isLoading=!1}render(){return this.isLoading?t(_,{height:"50px"}):this.documents.length?t(s,null,t("div",{class:"card",part:b},t("div",{class:"card-body"},t("h5",{class:"card-title",part:f},"Documents Already on File"),t("div",{class:"table-responsive"},t("table",{class:"table table-sm table-borderless",part:h},t("thead",null,t("tr",null,t("th",{style:{width:"25%"},part:p,scope:"col"},"File Name"),t("th",{style:{width:"25%"},part:p,scope:"col"},"File Type"),t("th",{style:{width:"25%"},part:p,scope:"col"},"Document Type"),t("th",{style:{width:"25%"},part:p,scope:"col"},"Date Uploaded"))),t("tbody",null,this.documents.sort(((e,t)=>e.document_type.localeCompare(t.document_type))).map(((e,s)=>t("tr",{class:0===s?"border-bottom border-top":"border-bottom"},t("td",{part:m},e.file_name),t("td",{part:m},e.file_type),t("td",{part:m},r(e.document_type)),t("td",{part:m},`${l(e.created_at)} - ${n(e.created_at)}`))))))))),t("hr",null)):null}},H=class{constructor(t){e(this,t),this.formControlInput=a(this,"formControlInput",7),this.formControlBlur=a(this,"formControlBlur",7),this.fileSelected=a(this,"fileSelected",7),this.handleFormControlInput=e=>{const t=e.target,s=t.getAttribute("name");this.inputHandler(s,t.value),this.formControlInput.emit({name:s,value:t.value})},this.changeHandler=()=>{const e=this.fileInput.files;e&&this.fileSelected.emit({fileList:e,document_type:this.documentType})},this.files=void 0,this.fileString=void 0,this.isFocused=!1,this.label=void 0,this.name=void 0,this.helpText=void 0,this.errorText=void 0,this.multiple=void 0,this.documentType=void 0,this.inputHandler=void 0,this.disabled=void 0}componentDidLoad(){this.fileInput=this.el.querySelector("input")}get part(){let e=y;return this.errorText&&(e=k),this.disabled&&(e=v),this.isFocused&&(e=x),e}render(){return t(s,{key:"a70c3c2b62599cdedf34c837e29f53011e56e018"},t("div",{key:"ae42cd54552d7e2b95c619acf25c4b24a0c29dc9",class:"form-group d-flex flex-column"},t("div",{key:"7b3b935921448a4e46d864dc933f5fd7c63ead93",class:"d-flex align-items-start gap-2"},t("label",{key:"5f1e6608b4bed90aadbf8ee6c45d6f92fa40d429",part:u,class:"form-label",htmlFor:this.name},this.label),t("form-control-tooltip",{key:"831be18cf54359800498a91ff4d0f8111feb0603",helpText:this.helpText})),t("input",{key:"5541ad6ba3a84e1bced7b61429c93b1d3b3632df",ref:e=>this.fileInput=e,type:"file",name:this.name,part:this.part,class:this.errorText?"form-control is-invalid":"form-control",multiple:this.multiple,disabled:this.disabled,onChange:this.changeHandler,onInput:this.handleFormControlInput,onFocus:()=>this.isFocused=!0,onBlur:()=>{this.isFocused=!1,this.formControlBlur.emit()}}),t(g,{key:"7c93f4e7fc3354479bd688e9a386948dc3b349de",errorText:this.errorText,name:this.name})))}get el(){return i(this)}};export{j as bank_account_document_form_inputs,T as bank_account_form_inputs,w as business_documents_on_file,H as form_control_file}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as s,h as e}from"./p-2783e363.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import{p as a}from"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{r as t,c as s,h as e}from"./p-2783e363.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import{p as a}from"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{V as i,W as r}from"./p-bf195b35.js";import{T as c,a as h,b as o,c as d,d as n}from"./p-58ee6ce9.js";import{t as b,a as p}from"./p-953e9dba.js";import{o as f,g as m}from"./p-f4739d31.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-142bfae3.js";import"./p-c8b78136.js";import"./p-f20b6ce1.js";const l=class{constructor(e){t(this,e),this.clickEvent=s(this,"click-event",7),this.errorEvent=s(this,"error-event",7),this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:c.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:c.next})},this.rowClickHandler=t=>{const s=t.target.closest("tr").dataset.rowEntityId;if(!s)return;const e=this.terminals.find((t=>t.id===s));this.clickEvent.emit({name:c.row,data:e})},this.getTerminals=void 0,this.getSubAccounts=void 0,this.columns=void 0,this.terminals=[],this.terminalsTable=void 0,this.subAccounts=[],this.loading=!0,this.errorMessage=void 0,this.paging=a,this.pagingParams={}}updateOnPropChange(){this.fetchData()}componentWillLoad(){this.terminalsTable=new h(this.terminals,this.columns,b,p),this.getTerminals&&this.getSubAccounts&&this.fetchData(),f("set",(()=>{this.pagingParams={}})),f("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}fetchData(){this.loading=!0,this.getTerminals({params:this.terminalParams,onSuccess:async({terminals:t,pagingInfo:s})=>{this.terminals=t,this.paging=s,this.terminalsTable.collectionData=this.terminals,this.terminalsTable.columnKeys.includes("sub_account_name")?await this.fetchSubAccounts():this.loading=!1},onError:({error:t,code:s,severity:e})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:s,message:t,severity:e}),this.loading=!1}})}async fetchSubAccounts(){this.getSubAccounts({params:this.subAccountParams,onSuccess:({subAccounts:t})=>{this.subAccounts=t,this.terminals=this.terminals.map((t=>{var s;return t.sub_account_name=null===(s=this.subAccounts.find((s=>s.id===t.account_id)))||void 0===s?void 0:s.name,t})),this.loading=!1},onError:({error:t,code:s,severity:e})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:s,message:t,severity:e}),this.loading=!1}})}get terminalParams(){const t=m();return Object.assign(Object.assign({},t),this.pagingParams)}get subAccountParams(){let t=this.terminals.map((t=>t.account_id));return{sub_account_id:[...new Set(t)].join(",")}}get entityId(){return this.terminals.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalsTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return e("div",{key:"dab480902928e4dbcdbf0c8ada95fdc4d186f211"},e("div",{key:"8fd8ce93ac16676d4ea9de2588467df5feb18e71",class:"table-wrapper"},e("table",{key:"02a58d1f233bec3cd40877c4cfeba55b345876b7",class:"table table-hover",part:i},e("thead",{key:"64d3d4cdb0c97a0628da1935386e9cb430a71ea7",class:"table-head sticky-top"},e("tr",{key:"a52c8d1a59adfa1d18dc8dfa3a70a6318f52f4c2",class:"table-light text-nowrap"},this.terminalsTable.columnData.map((t=>t)))),e("tbody",{key:"476983a5b8dcb65d62953de2a8a7a24c47cb83be",class:"table-body"},e(o,{key:"ecae363863cb7ab6b2d8226f8f39bc682333af29",columnSpan:this.terminalsTable.columnKeys.length,isLoading:this.loading}),e(d,{key:"f8fb01d5048fc0143546344b65a9018aeab8b688",isEmpty:this.showEmptyState,columnSpan:this.terminalsTable.columnKeys.length}),e(n,{key:"cd40cb1696624e20b9cad238d43be902538ce4cd",columnSpan:this.terminalsTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalsTable.rowData.map(((t,s)=>e("tr",{"data-test-id":"table-row","data-row-entity-id":this.entityId[s],onClick:this.rowClickHandler},t)))),this.paging&&e("tfoot",{key:"29ebf6d4d3537f25545fa9e67416c52ee1223b12",class:"sticky-bottom"},e("tr",{key:"a732f3d809a4f97b926b0e978e32c919f36c13b1",class:"table-light align-middle"},e("td",{key:"2e66c17f57a08d4e0f4da693caf0ea44f5ec7484",part:r,colSpan:this.terminalsTable.columnData.length},e("pagination-menu",{key:"e3544088964b15242d710223a76208217bffab3f",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["updateOnPropChange"],getTerminals:["updateOnPropChange"],getSubAccounts:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{l as terminals_list_core}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as s,r as i,c as t}from"./p-2783e363.js";import{c as o,F as e}from"./p-01033194.js";import{b as r,a}from"./p-537bce77.js";import{a as h,i as n}from"./p-d757fcf5.js";import{A as c}from"./p-5f6b4bc9.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{h as s,r as i,c as t}from"./p-2783e363.js";import{c as o,F as e}from"./p-01033194.js";import{b as r,a}from"./p-537bce77.js";import{a as h,i as n}from"./p-d757fcf5.js";import{A as c}from"./p-5f6b4bc9.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{B as l,a as p}from"./p-5d1d2fd7.js";import{c as m,J as d}from"./p-3188f72a.js";import{B as f}from"./p-bfc2d88a.js";import{S as b}from"./p-bfe9748b.js";import{H as j}from"./p-ccb9ee53.js";import{S as u}from"./p-56c7fc8d.js";import{B as v}from"./p-73f9be7c.js";import"./p-bf12999f.js";import"./p-6078a370.js";import"./p-c9b78275.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-1ff8810b.js";import"./p-88a37837.js";import"./p-bf195b35.js";const w=o(Object.assign(Object.assign({},r().fields),{legal_address:h(),additional_questions:a(),representative:n("representative")})),g=()=>s("div",{class:"row gap-3"},s("div",{class:"col-12"},s(u,{width:"25%"})),s("div",{class:"col-12"},s(u,{width:"100%"})),s("div",{class:"col-12 d-flex gap-3"},s(u,{width:"50%"}),s(u,{width:"50%"})),s("div",{class:"col-12 d-flex gap-3"},s(u,{width:"65%"}),s(u,{width:"35%"}))),x=()=>s("div",{class:"row gap-5"},s("div",{class:"col-12"},s(u,{width:"40%",height:"40px"})),s(g,null),s(g,null),s(g,null)),y=class{constructor(s){i(this,s),this.submitEvent=t(this,"submit-event",7),this.clickEvent=t(this,"click-event",7),this.instantiateBusiness=s=>{const i=new l(s);this.formController.setInitialValues(Object.assign({},i))},this.sendData=async()=>{this.isSaving=!0;try{const s=this.formController.values.getValue(),i=this.formController.getInitialValues(),t=new l(Object.assign(Object.assign({},i),s)).payload,o=await this.api.patch(this.businessEndpoint,t);this.handleReponse(o)}catch(s){this.errorMessage=p.patchData}finally{this.isSaving=!1}},this.fetchData=async()=>{this.isLoading=!0;try{const s=await this.api.get(this.businessEndpoint);this.instantiateBusiness(s.data)}catch(s){this.errorMessage=p.fetchData}finally{this.isLoading=!1}},this.validateAndSubmit=s=>{s.preventDefault(),this.formController.validateAndSubmit(this.sendData)},this.authToken=void 0,this.businessId=void 0,this.hideErrors=!1,this.formTitle="Business Information",this.removeTitle=!1,this.isLoading=!1,this.isSaving=!1,this.errorMessage=void 0}componentWillLoad(){m(),this.analytics=new d(this),this.authToken||console.error("Warning: Missing auth-token. The form will not be functional without it."),this.businessId||console.error("Warning: Missing business-id. The form requires an existing business-id to function."),this.formController=new e(w),this.api=c({authToken:this.authToken,apiOrigin:"https://wc-proxy.justifi.ai"}),this.fetchData()}disconnectedCallback(){this.analytics.cleanup()}get title(){return this.removeTitle?"":this.formTitle}get disabledState(){return this.isSaving}get businessEndpoint(){return`entities/business/${this.businessId}`}handleReponse(s){s.error&&(this.errorMessage=p.patchData),this.submitEvent.emit({response:s}),this.instantiateBusiness(s.data)}render(){return s(b,null,this.isLoading?s(x,null):s("form",{onSubmit:this.validateAndSubmit},s("div",{class:"row gap-3"},s(j,{text:this.title}),s("form-alert",{text:this.errorMessage,hideAlert:this.hideErrors}),s("div",{class:"col-12 mb-4"},s("justifi-business-core-info",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("justifi-legal-address-form",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("justifi-additional-questions",{formController:this.formController})),s("div",{class:"col-12 mb-4"},s("justifi-business-representative",{formController:this.formController})),s("div",{class:"col-12 d-flex flex-row-reverse"},s(f,{type:"submit",disabled:this.disabledState,variant:"primary",onClick:()=>this.clickEvent.emit({name:v.submit}),isLoading:this.isSaving},"Submit")))))}};export{y as justifi_business_form}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as e,h as s}from"./p-2783e363.js";import{T as a,a as i,b as r,c,d as h}from"./p-58ee6ce9.js";import{V as o,W as d}from"./p-bf195b35.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import{p as b}from"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-
|
|
1
|
+
import{r as t,c as e,h as s}from"./p-2783e363.js";import{T as a,a as i,b as r,c,d as h}from"./p-58ee6ce9.js";import{V as o,W as d}from"./p-bf195b35.js";import"./p-9dd8685c.js";import"./p-1366a019.js";import{p as b}from"./p-56f6ce4c.js";import"./p-3f5e6602.js";import"./p-2a9d7f6b.js";import"./p-61f0a2ce.js";import{t as f,a as n}from"./p-9fecad5a.js";import{o as p,g as m}from"./p-beec0b60.js";import"./p-142bfae3.js";import"./p-f8fccf44.js";import"./p-abdbcd8e.js";import"./p-c8b78136.js";import"./p-f20b6ce1.js";const l=class{constructor(s){t(this,s),this.clickEvent=e(this,"click-event",7),this.errorEvent=e(this,"error-event",7),this.handleClickPrevious=t=>{this.pagingParams={before_cursor:t},this.clickEvent.emit({name:a.previous})},this.handleClickNext=t=>{this.pagingParams={after_cursor:t},this.clickEvent.emit({name:a.next})},this.rowClickHandler=t=>{const e=t.target.closest("tr").dataset.rowEntityId;if(!e)return;const s=this.terminalOrders.find((t=>t.id===e));this.clickEvent.emit({name:a.row,data:s})},this.getTerminalOrders=void 0,this.columns=void 0,this.terminalOrders=[],this.terminalOrdersTable=void 0,this.loading=!0,this.errorMessage=void 0,this.paging=b,this.pagingParams={}}updateOnPropChange(){this.fetchData()}componentWillLoad(){this.terminalOrdersTable=new i(this.terminalOrders,this.columns,f,n),this.getTerminalOrders&&this.fetchData(),p("set",(()=>{this.pagingParams={}})),p("reset",(()=>{this.pagingParams={},this.errorMessage=""}))}fetchData(){this.loading=!0,this.getTerminalOrders({params:this.terminalOrderParams,onSuccess:async({terminalOrders:t,pagingInfo:e})=>{this.terminalOrders=t,this.paging=e,this.terminalOrdersTable.collectionData=this.terminalOrders},onError:({error:t,code:e,severity:s})=>{this.errorMessage=t,this.errorEvent.emit({errorCode:e,message:t,severity:s})},final:()=>{this.loading=!1}})}get terminalOrderParams(){const t=m();return Object.assign(Object.assign({},t),this.pagingParams)}get entityId(){return this.terminalOrders.map((t=>t.id))}get showEmptyState(){return!this.loading&&!this.errorMessage&&this.terminalOrdersTable.rowData.length<1}get showErrorState(){return!this.loading&&!!this.errorMessage}get showRowData(){return!this.showEmptyState&&!this.showErrorState&&!this.loading}render(){return s("div",{key:"029644a4c7e2f8957ffafb9ff62390b6b6869fce"},s("div",{key:"c6d0ae6e68f45252bbc276da1ed853fc6b9b5338",class:"table-wrapper"},s("table",{key:"1809d7ddfd9b9c6834498115ac43df8f7b4ea5d9",class:"table table-hover",part:o},s("thead",{key:"bcd8f0c82e5aa97ba1bd1207353bc09a4c21bd05",class:"table-head sticky-top"},s("tr",{key:"bfe9dc35dc30acf4f483c0359989db9ff82ceb7a",class:"table-light text-nowrap"},this.terminalOrdersTable.columnData.map((t=>t)))),s("tbody",{key:"5181c615bbc06bf347c9e567064fcbbf6b518d2d",class:"table-body"},s(r,{key:"a48ee705634008f203e01327ea6f9efdf980fdc5",columnSpan:this.terminalOrdersTable.columnKeys.length,isLoading:this.loading}),s(c,{key:"ae1daed5464b7719e4f4e7c116a408b6b37cb997",isEmpty:this.showEmptyState,columnSpan:this.terminalOrdersTable.columnKeys.length}),s(h,{key:"9496b60d37f5ad699083f3cd305e14550a4b6770",columnSpan:this.terminalOrdersTable.columnKeys.length,errorMessage:this.errorMessage}),this.showRowData&&this.terminalOrdersTable.rowData.map(((t,e)=>s("tr",{"data-test-id":"table-row","data-row-entity-id":this.entityId[e],onClick:this.rowClickHandler},t)))),this.paging&&s("tfoot",{key:"0ac98a7e41add32367010e0c09f99c4328f2d717",class:"sticky-bottom"},s("tr",{key:"a8fda69087663a8707ef16c2fa153d351426fe0c",class:"table-light align-middle"},s("td",{key:"f805502e404b69e86f3ec0963321bd9989c035b8",part:d,colSpan:this.terminalOrdersTable.columnData.length},s("pagination-menu",{key:"93848e212dce3b8e00b4e44e4907045c2ca5fd67",paging:Object.assign(Object.assign({},this.paging),{handleClickPrevious:this.handleClickPrevious,handleClickNext:this.handleClickNext})})))))))}static get watchers(){return{pagingParams:["updateOnPropChange"],getTerminalOrders:["updateOnPropChange"],columns:["updateOnPropChange"]}}};export{l as terminal_orders_list_core}
|