@mercoa/react 0.0.10-rc1 → 0.0.10-rc2
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/index.es.js +2 -2
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.umd.js
CHANGED
|
@@ -170,7 +170,7 @@ License: MIT
|
|
|
170
170
|
Error: ${fo.body}`),Q$1.error("There was an error creating the invoice. Make sure the invoice number is unique for this vendor and try again."),jr(!1)})},fn=(Tn,Bn,Wn)=>{const Vn=Or==null?void 0:Or.map((Hn,Jn)=>Jn===Tn?Bn:Hn);Er(Vn),Wn(Vn)};async function Sn(){var Bn;if(!(ee!=null&&ee.id))return;const Tn=await((Bn=sr.client)==null?void 0:Bn.invoice.getVendorLink(ee.id));Tn?navigator.clipboard.writeText(Tn).then(function(){Q$1.info("Link Copied")},function(Wn){Q$1.error("There was an issue generating the vendor link. Please refresh and try again.")}):Q$1.error("There was an issue generating the vendor link. Please refresh and try again.")}return jsxs("div",{style:{height:`${ir}px`},className:"mercoa-overflow-auto mercoa-pr-2 mercoa-pb-10",ref:Ir,children:[jsxs("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-7 mercoa-text-gray-900",children:["Edit Invoice ",ee&&jsx(InvoiceStatusPill,{invoice:ee})]}),jsx("p",{className:"mercoa-mb-3 mercoa-text-xs mercoa-leading-6 mercoa-text-gray-400 mercoa-select-all",children:ee==null?void 0:ee.id}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-mb-4"}),jsxs("div",{className:"sm:mercoa-col-span-3",children:[jsx("label",{htmlFor:"vendor-name",className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700",children:"Vendor"}),jsx("div",{className:"mercoa-mt-2 mercoa-flex mercoa-items-center mercoa-justify-left",children:jsx(CounterpartySearch,{type:"payee",onSelect:Tn=>{console.log({vendor:Tn}),Mr(Tn),nn("vendorId",(Tn==null?void 0:Tn.id)??void 0,{shouldTouch:!0,shouldDirty:!0}),nn("vendorName",(Tn==null?void 0:Tn.name)??void 0,{shouldTouch:!0,shouldDirty:!0})},counterparty:yr})})]}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6"}),jsxs("form",{onSubmit:Zr(Rn),className:`${Tr==="new"&&!((dn=(zn=(_n=sr.iframeOptions)==null?void 0:_n.options)==null?void 0:zn.vendors)!=null&&dn.disableCreation)?"mercoa-opacity-25 mercoa-pointer-events-none":""}
|
|
171
171
|
${Cr}
|
|
172
172
|
mercoa-mt-6 mercoa-grid mercoa-gap-x-6 mercoa-gap-y-4`,children:[jsx("label",{htmlFor:"vendor-name",className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mb-2 mercoa-col-span-full",children:"Invoice Details"}),jsxs("div",{className:"sm:mercoa-col-span-1",children:[jsxs("div",{className:"mercoa-flex mercoa-justify-between",children:[jsx("label",{htmlFor:"invoiceNumber",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900 mercoa-whitespace-nowrap",children:"Invoice #"}),jsx("span",{className:"mercoa-text-xs mercoa-leading-6 mercoa-text-gray-500 mercoa-ml-1",children:"Optional"})]}),jsx("div",{className:"mercoa-mt-2",children:jsx("input",{type:"text",...Lr("invoiceNumber"),className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900 mercoa-shadow-sm mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6",placeholder:"#1024"})})]}),jsxs("div",{className:"sm:mercoa-col-span-1",children:[jsx("label",{htmlFor:"amount",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Amount"}),jsxs("div",{className:"mercoa-relative mercoa-mt-2 mercoa-rounded-md mercoa-shadow-sm",children:[jsx("div",{className:"mercoa-pointer-events-none mercoa-absolute mercoa-inset-y-0 mercoa-left-0 mercoa-flex mercoa-items-center mercoa-pl-3",children:jsx("span",{className:"mercoa-text-gray-500 sm:mercoa-text-sm",children:currencyCodeToSymbol(Sr)})}),jsx("input",{type:"text",...Lr("amount"),className:`mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-0 mercoa-py-1.5 mercoa-pr-[4.4rem] mercoa-text-gray-900 mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6
|
|
173
|
-
${currencyCodeToSymbol(Sr).length>1?"mercoa-pl-12":"mercoa-pl-6"}`,placeholder:"0.00"}),jsxs("div",{className:"mercoa-absolute mercoa-inset-y-0 mercoa-right-0 mercoa-flex mercoa-items-center",children:[jsx("label",{htmlFor:"currency",className:"mercoa-sr-only",children:"Currency"}),jsx("select",{...Lr("currency"),className:"mercoa-h-full mercoa-rounded-md mercoa-border-0 mercoa-bg-transparent mercoa-py-0 mercoa-pl-2 mercoa-pr-7 mercoa-text-gray-500 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",children:dr.map((Tn,Bn)=>jsx("option",{value:Tn,children:Tn},Bn))})]})]}),((mn=Yr.amount)==null?void 0:mn.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Wr=Yr.amount)==null?void 0:Wr.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"invoiceDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Invoice Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"invoiceDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Select invoice date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value})})}),((Pn=Yr.invoiceDate)==null?void 0:Pn.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Un=Yr.invoiceDate)==null?void 0:Un.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"dueDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Due Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"dueDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Select due date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value})})}),((Hr=Yr.dueDate)==null?void 0:Hr.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Fn=Yr.dueDate)==null?void 0:Fn.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"deductionDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900 mercoa-whitespace-nowrap",children:"Scheduled Payment Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"deductionDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Scheduled payment date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value,minDate:dayjs$1().add(1,"day").toDate(),filterDate:isWeekday})})})]}),jsxs("div",{className:"mercoa-col-span-full",children:[jsx("label",{htmlFor:"description",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900 ",children:"Description"}),jsx("div",{className:"mercoa-mt-2",children:jsx("textarea",{id:"description",...Lr("description"),rows:3,className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900 mercoa-shadow-sm mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6",defaultValue:""})})]}),!((On=(an=(pn=sr.iframeOptions)==null?void 0:pn.options)==null?void 0:an.invoice)!=null&&On.disableLineItems)&&jsxs(Fragment,{children:[jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsx("div",{className:"mercoa-col-span-full",children:jsx(LineItems,{lineItems:Ar,append:Gr,remove:on,register:Lr,currency:Sr,watch:Nr,hasDocument:!!ce||!!(ee!=null&&ee.hasDocuments),paymentDestination:hr.find(Tn=>Tn.id===gr),paymentSource:cr.find(Tn=>Tn.id===$r),setValue:nn,entityMetadata:br,width:Br})})]}),(((qn=(kn=(xn=sr.organization)==null?void 0:xn.metadataSchema)==null?void 0:kn.filter(Tn=>!Tn.lineItem))==null?void 0:qn.length)??0)>0&&jsxs(Fragment,{children:[jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsx("label",{htmlFor:"vendor-name",className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mb-2 mercoa-col-span-full",children:"Additional Invoice Details"}),(Gn=(Kn=sr.organization)==null?void 0:Kn.metadataSchema)==null?void 0:Gn.map(Tn=>{const Bn=JSON.parse(kr??{}),Wn=Bn==null?void 0:Bn[Tn.key];return jsx("div",{className:"mercoa-col-span-full",children:jsx(MetadataSelection,{entityMetadata:br.find(Vn=>Vn.key===Tn.key),schema:Tn,value:Wn,hasDocument:!!ce||!!(ee!=null&&ee.hasDocuments),paymentDestination:hr.find(Vn=>Vn.id===gr),paymentSource:cr.find(Vn=>Vn.id===$r),setValue:Vn=>{Array.isArray(Vn)&&(Vn=Vn.join(","));const Hn=JSON.parse(kr??{});Hn[Tn.key]=`${Vn}`,nn("metadata",JSON.stringify(Hn),{shouldDirty:!0,shouldTouch:!0})}})},Tn.key)})]}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsxs("div",{className:"mercoa-pb-6 mercoa-col-span-full",children:[jsx("h2",{className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mt-5",children:"How do you want to pay?"}),ar&&cr.length<1&&(($n=(Yn=(Qn=sr.iframeOptions)==null?void 0:Qn.options)==null?void 0:Yn.entity)!=null&&$n.enableMercoaPayments)?jsx(MercoaButton,{isEmphasized:!0,type:"button",onClick:ar,size:"md",children:"Add Payment Method"}):jsx(SelectPaymentSource,{paymentMethods:cr,paymentMethodSchemas:ur,currentPaymentMethodId:ee==null?void 0:ee.paymentSourceId,isSource:!0,register:Lr,watch:Nr,errors:Yr,control:Fr,setValue:nn,setError:tn,clearErrors:rn})]}),Pr&&jsxs("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-16 mercoa-col-span-full",children:[jsxs("h2",{className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mt-5",children:["How does ",jsx("span",{className:"mercoa-text-gray-800 mercoa-underline",children:Pr})," want to get paid?"]}),jsx(SelectPaymentSource,{paymentMethods:hr,paymentMethodSchemas:ur,currentPaymentMethodId:ee==null?void 0:ee.paymentDestinationId,isDestination:!0,vendorName:Pr,vendorId:Tr,register:Lr,watch:Nr,errors:Yr,control:Fr,setValue:nn,setError:tn,clearErrors:rn}),(ee==null?void 0:ee.id)&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Canceled&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Archived&&!((Mn=(bn=(en=sr.iframeOptions)==null?void 0:en.options)==null?void 0:bn.vendors)!=null&&Mn.disableCreation)&&jsxs(MercoaButton,{isEmphasized:!1,onClick:Sn,className:"mercoa-inline-flex mercoa-text-sm mercoa-float-right mercoa-mt-3",type:"button",children:[jsx(DocumentDuplicateIcon$1,{className:"mercoa-h-5 mercoa-w-5 md:mercoa-mr-2"})," ",jsx("span",{className:"mercoa-hidden md:mercoa-inline-block",children:"Get Payment Acceptance Link"})]})]}),jsx("div",{className:"mercoa-col-span-full",children:(ee==null?void 0:ee.approvers)&&ee.approvers.length>0&&Or&&jsxs(Fragment,{children:[ee.status===javascript.Mercoa.InvoiceStatus.Draft?jsx(Controller,{control:Fr,name:"approvers",render:({field:{onChange:Tn}})=>{var Bn;return jsx(ApproversSelection,{approverSlots:ee.approvers,selectedApprovers:Or,setSelectedApprovers:fn,hasError:!!((Bn=Yr.approvers)!=null&&Bn.message),formOnChange:Tn})}}):jsx(ApproversAction,{approverSlots:ee.approvers,invoiceId:ee.id,invoiceStatus:ee.status,refreshInvoice:or}),Yr.approvers&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:"Please select all approvers"})]})}),jsx("div",{className:"mercoa-col-span-full",style:{visibility:"hidden"},children:jsx(ErrorOverview,{errors:Yr,clearErrors:rn})}),(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Canceled&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Archived&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Paid&&jsxs("div",{className:"mercoa-absolute mercoa-bottom-0 mercoa-right-0 mercoa-w-full mercoa-bg-white mercoa-z-10",children:[jsx(ErrorOverview,{errors:Yr,clearErrors:rn}),jsxs("div",{className:" mercoa-container mercoa-mx-auto mercoa-flex mercoa-flex-row-reverse mercoa-items-center mercoa-gap-2 mercoa-py-3 mercoa-px-4 sm:mercoa-px-6 lg:mercoa-px-8",children:[(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Scheduled&&jsxs(Fragment,{children:[!((En=(ln=(Cn=sr.iframeOptions)==null?void 0:Cn.options)==null?void 0:ln.vendors)!=null&&En.disableCreation)&&yr&&!(yr!=null&&yr.email)&&jsx(MercoaButton,{isEmphasized:!0,disabled:!0,children:"Vendor Email Required"}),jsx(SaveInvoiceButton,{nextInvoiceState:Dn,setValue:nn,approvers:ee==null?void 0:ee.approvers,approverSlots:Rr,isSaving:xr}),Dn==="NEW"&&(ee==null?void 0:ee.status)!=="NEW"&&jsx(MercoaButton,{isEmphasized:!1,onClick:()=>nn("saveAsDraft",!0),disabled:xr,children:"Save Draft"})]}),((ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Scheduled||(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Pending)&&((In=ee==null?void 0:ee.paymentDestination)==null?void 0:In.type)===javascript.Mercoa.PaymentMethodType.OffPlatform&&jsx(MercoaButton,{disabled:xr,isEmphasized:!0,onClick:()=>{var Tn;ee!=null&&ee.id&&(jr(!0),confirm("Are you sure you want to mark this invoice as paid? This cannot be undone.")&&((Tn=sr.client)==null||Tn.invoice.update(ee==null?void 0:ee.id,{status:javascript.Mercoa.InvoiceStatus.Paid}).then(Bn=>{Bn&&(console.log(Bn),Q$1.success("Invoice marked as paid"),or(Bn.id)),jr(!1)})))},children:"Mark as Paid"}),jsx(CancelPayment,{invoice:ee,refreshInvoice:or,onRedirect:nr})]})]})]}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-mb-4"}),ee!=null&&ee.id&&ee.id!=="new"?jsx(InvoiceComments,{invoice:ee}):jsx("div",{className:"mercoa-mt-10"}),jsx("div",{className:"mercoa-mt-20"})]})}function ErrorOverview({errors:ee,clearErrors:re}){const ce=Object.keys(ee);if(ce.length===0)return null;const te={invoiceNumber:"Invoice Number",amount:"Amount",invoiceDate:"Invoice Date",dueDate:"Due Date",deductionDate:"Scheduled Payment Date",currency:"Currency",vendorId:"Vendor",paymentSourceId:"Payment Source",paymentDestinationId:"Payment Destination",approvers:"Approvers",lineItems:"Line Items"},nr={approvers:"Please select all approvers",lineItems:"Please make sure all line items have a description. Amount, quantity, and unit price must be positive numbers."};return jsxs("div",{className:"mercoa-bg-red-50 mercoa-border-l-4 mercoa-border-red-400 mercoa-p-4 mercoa-relative",children:[jsxs("button",{type:"button",className:"mercoa-absolute mercoa-top-1 mercoa-right-1 mercoa-p-1 mercoa-rounded-md hover:mercoa-bg-red-100 focus:mercoa-outline-none focus:mercoa-bg-red-100",onClick:()=>re(),children:[jsx("span",{className:"mercoa-sr-only",children:"Close"}),jsx(XMarkIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-gray-400","aria-hidden":"true"})]}),jsxs("div",{className:"mercoa-flex",children:[jsx("div",{className:"mercoa-flex-shrink-0",children:jsx(ExclamationCircleIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-red-400","aria-hidden":"true"})}),jsxs("div",{className:"mercoa-ml-3",children:[jsx("h3",{className:"mercoa-text-sm mercoa-font-medium mercoa-text-red-800",children:"There were errors with your submission"}),jsx("div",{className:"mercoa-mt-2 mercoa-text-sm mercoa-text-red-700",children:jsx("ul",{className:"mercoa-list-disc mercoa-pl-5 mercoa-space-y-1",children:ce.map(or=>{var ar;return jsx("li",{children:`${te[or]}: ${((ar=ee[or])==null?void 0:ar.message)??nr[or]??""}`},or)})})})]})]})]})}function SaveInvoiceButton({nextInvoiceState:ee,setValue:re,approverSlots:ce,approvers:te,isSaving:nr}){let or="Next";switch(ee){case javascript.Mercoa.InvoiceStatus.Draft:or="Save Draft";break;case javascript.Mercoa.InvoiceStatus.New:te&&te.length>0?or="Submit for Approval":or="Next";break;case javascript.Mercoa.InvoiceStatus.Approved:or="Missing Vendor Payment Details";break;case javascript.Mercoa.InvoiceStatus.Scheduled:or="Schedule Payment";break}return ee===javascript.Mercoa.InvoiceStatus.Approved&&te&&te.length>0&&te.every(ar=>ar.assignedUserId)&&!te.every(ar=>ar.action===javascript.Mercoa.ApproverAction.Approve)?jsx("span",{className:"mercoa-text-center mercoa-text-gray-800 mercoa-font-medium mercoa-p-3 mercoa-rounded-md mercoa-bg-gray-50",children:"Waiting for approval"}):or==="Submit for Approval"&&ce&&ce.length>0&&!ce.every(ar=>ar.assignedUserId)?jsx(MercoaButton,{type:"submit",isEmphasized:!0,onClick:()=>re("saveAsDraft",!1),disabled:!0,children:"Please assign all approvers"}):jsx(MercoaButton,{type:"submit",isEmphasized:!0,onClick:()=>re("saveAsDraft",!1),disabled:nr,children:or})}function CancelPayment({invoice:ee,refreshInvoice:re,onRedirect:ce}){const te=useMercoaSession(),[nr,or]=React$1.useState(!1),ar=React$1.useRef(null);function ir(){var ur,fr,hr;ee!=null&&ee.id&&(ee.status===javascript.Mercoa.InvoiceStatus.Draft?((ur=te.client)==null||ur.invoice.delete(ee.id),Q$1.success("Invoice deleted"),ce(void 0)):ee.status===javascript.Mercoa.InvoiceStatus.New||ee.status===javascript.Mercoa.InvoiceStatus.Approved?(fr=te.client)==null||fr.invoice.update(ee.id,{status:javascript.Mercoa.InvoiceStatus.Archived}).then(mr=>{mr&&(console.log(mr),Q$1.success("Invoice archived"),re(mr.id))}):ee.status===javascript.Mercoa.InvoiceStatus.Scheduled&&((hr=te.client)==null||hr.invoice.update(ee.id,{status:javascript.Mercoa.InvoiceStatus.Canceled}).then(mr=>{mr&&(console.log(mr),Q$1.success("Invoice canceled"),re(mr.id))})))}let sr="Cancel Payment",cr="Are you sure you want to cancel this invoice? This cannot be undone and the payment will be canceled.";(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Draft?(sr="Delete Invoice",cr="Are you sure you want to delete this invoice? This cannot be undone."):((ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.New||(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Approved)&&(sr="Archive Invoice",cr="Are you sure you want to archive this invoice?");const lr=[javascript.Mercoa.InvoiceStatus.Pending,javascript.Mercoa.InvoiceStatus.Paid,javascript.Mercoa.InvoiceStatus.Canceled,javascript.Mercoa.InvoiceStatus.Archived,void 0];return jsx(Fragment,{children:!lr.includes(ee==null?void 0:ee.status)&&jsxs(Fragment,{children:[jsx(MercoaButton,{type:"button",isEmphasized:!1,color:"red",onClick:()=>or(!0),children:sr}),jsx(tt$1.Root,{show:nr,as:React$1.Fragment,children:jsxs(_t$1,{as:"div",className:"mercoa-relative mercoa-z-10",onClose:()=>or(!1),initialFocus:ar,children:[jsx(tt$1.Child,{as:React$1.Fragment,enter:"mercoa-ease-out mercoa-duration-300",enterFrom:"mercoa-opacity-0",enterTo:"mercoa-opacity-100",leave:"mercoa-ease-in mercoa-duration-200",leaveFrom:"mercoa-opacity-100",leaveTo:"mercoa-opacity-0",children:jsx("div",{className:"mercoa-fixed mercoa-inset-0 mercoa-bg-gray-500 mercoa-bg-mercoa-opacity-75 mercoa-transition-opacity"})}),jsx("div",{className:"mercoa-fixed mercoa-inset-0 mercoa-z-10 mercoa-overflow-y-auto",children:jsx("div",{className:"mercoa-flex mercoa-min-h-full mercoa-items-end mercoa-justify-center mercoa-p-4 mercoa-text-center sm:mercoa-items-center sm:mercoa-p-0",children:jsx(tt$1.Child,{as:React$1.Fragment,enter:"mercoa-ease-out mercoa-duration-300",enterFrom:"mercoa-opacity-0 mercoa-translate-y-4 sm:mercoa-translate-y-0 sm:mercoa-scale-95",enterTo:"mercoa-opacity-100 mercoa-translate-y-0 sm:mercoa-scale-100",leave:"mercoa-ease-in mercoa-duration-200",leaveFrom:"mercoa-opacity-100 mercoa-translate-y-0 sm:mercoa-scale-100",leaveTo:"mercoa-opacity-0 mercoa-translate-y-4 sm:mercoa-translate-y-0 sm:mercoa-scale-95",children:jsxs(_t$1.Panel,{className:"mercoa-relative mercoa-transform mercoa-overflow-hidden mercoa-rounded-lg mercoa-bg-white mercoa-px-4 mercoa-pb-4 mercoa-pt-5 mercoa-text-left mercoa-shadow-xl mercoa-transition-all sm:mercoa-my-8 sm:mercoa-w-full sm:mercoa-max-w-lg sm:mercoa-p-6",children:[jsxs("div",{className:"sm:mercoa-flex sm:mercoa-items-start",children:[jsx("div",{className:"mercoa-mx-auto mercoa-flex mercoa-h-12 mercoa-w-12 mercoa-flex-shrink-0 mercoa-items-center mercoa-justify-center mercoa-rounded-full mercoa-bg-red-100 sm:mercoa-mx-0 sm:mercoa-h-10 sm:mercoa-w-10",children:jsx(ExclamationTriangleIcon$1,{className:"mercoa-h-6 mercoa-w-6 mercoa-text-red-600","aria-hidden":"true"})}),jsxs("div",{className:"mercoa-mt-3 mercoa-text-center sm:mercoa-ml-4 sm:mercoa-mt-0 sm:mercoa-text-left",children:[jsx(_t$1.Title,{as:"h3",className:"mercoa-text-base mercoa-font-semibold mercoa-leading-6 mercoa-text-gray-900",children:sr}),jsx("div",{className:"mercoa-mt-2",children:jsx("p",{className:"mercoa-text-sm mercoa-text-gray-500",children:cr})})]})]}),jsxs("div",{className:"mercoa-mt-5 sm:mercoa-mt-4 sm:mercoa-flex sm:mercoa-flex-row-reverse",children:[jsx("button",{type:"button",className:"mercoa-inline-flex mercoa-w-full mercoa-justify-center mercoa-rounded-md mercoa-bg-red-600 mercoa-px-3 mercoa-py-2 mercoa-text-sm mercoa-font-semibold mercoa-text-white mercoa-shadow-sm hover:mercoa-bg-red-500 sm:mercoa-ml-3 sm:mercoa-w-auto",onClick:ir,children:sr}),jsx("button",{type:"button",className:"mercoa-mt-3 mercoa-inline-flex mercoa-w-full mercoa-justify-center mercoa-rounded-md mercoa-bg-white mercoa-px-3 mercoa-py-2 mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-shadow-sm mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 hover:mercoa-bg-gray-50 sm:mercoa-mt-0 sm:mercoa-w-auto",onClick:()=>or(!1),ref:ar,children:"Never mind"})]})]})})})})]})})]})})}function SelectPaymentSource({paymentMethods:ee,paymentMethodSchemas:re,register:ce,errors:te,watch:nr,control:or,setValue:ar,setError:ir,clearErrors:sr,isSource:cr,isDestination:lr,vendorName:ur,vendorId:fr,currentPaymentMethodId:hr}){var Er,br,_r,xr;let mr="paymentMethodSourceType",dr="paymentSourceId";lr&&(mr="paymentMethodDestinationType",dr="paymentDestinationId");const pr=useMercoaSession(),yr=[];ee.some(jr=>jr.type==="bankAccount")&&yr.push({key:"bankAccount",value:"Bank Account"}),ee.some(jr=>jr.type==="card")&&yr.push({key:"card",value:"Card"}),ee.some(jr=>jr.type==="check")&&yr.push({key:"check",value:"Check"}),ee.forEach(jr=>{if(jr.type==="custom"){if(yr.some(wr=>wr.key===jr.schemaId))return;yr.push({key:jr.schemaId??"",value:jr.schema.name??""})}}),lr&&((br=(Er=pr.organization)==null?void 0:Er.paymentMethods)==null||br.backupDisbursements.forEach(jr=>{var wr;jr.active&&(yr.some(Ir=>{if(Ir.key===jr.type)return!0;if(jr.type==="custom"){const Br=re.find(Cr=>Cr.id==jr.name);if(Br&&Ir.key===Br.id)return!0}return!1})||(jr.type!="custom"?yr.push({key:jr.type,value:jr.name}):yr.push({key:jr.name,value:((wr=re.find(Ir=>Ir.id==jr.name))==null?void 0:wr.name)??"Other"})))}));const Mr=nr(mr),Or=nr(dr);return React$1.useEffect(()=>{if(hr){const jr=ee.find(wr=>wr.id===hr);if(jr){jr.type==="custom"?ar(mr,jr.schemaId):ar(mr,jr.type);return}}if(cr){const jr=ee.find(wr=>wr.isDefaultSource);if(jr){ar(mr,jr.type);return}}if(lr){const jr=ee.find(wr=>wr.isDefaultDestination);if(jr){ar(mr,jr.type);return}}if(ee.some(jr=>jr.type==="bankAccount"))ar(mr,"bankAccount");else if(ee.some(jr=>jr.type==="card"))ar(mr,"card");else if(ee.some(jr=>jr.type==="check"))ar(mr,"check");else if(ee.some(jr=>jr.type==="custom")){let jr=ee.find(wr=>wr.type==="custom");(jr==null?void 0:jr.type)==="custom"&&ar(mr,jr==null?void 0:jr.schemaId)}},[ee]),React$1.useEffect(()=>{var jr,wr,Ir,Br;if(cr){const Cr=ee.find(Ur=>Ur.isDefaultSource);if(Cr){ar(dr,Cr.id);return}}if(lr){const Cr=ee.find(Ur=>Ur.isDefaultDestination);if(Cr){ar(dr,Cr.id);return}}if(hr){const Cr=ee.find(Ur=>Ur.id===hr);if(Cr){ar(dr,Cr.id);return}}Mr==="bankAccount"?ar(dr,(jr=ee.find(Cr=>Cr.type==="bankAccount"))==null?void 0:jr.id):Mr==="card"?ar(dr,(wr=ee.find(Cr=>Cr.type==="card"))==null?void 0:wr.id):Mr==="check"?ar(dr,(Ir=ee.find(Cr=>Cr.type==="check"))==null?void 0:Ir.id):ar(dr,(Br=ee.find(Cr=>Cr.type==="custom"&&Cr.schemaId===Mr))==null?void 0:Br.id)},[Mr,ee]),React$1.useEffect(()=>{var wr;if(!lr||!fr||Mr!==javascript.Mercoa.PaymentMethodType.OffPlatform)return;const jr=ee.find(Ir=>Ir.type===javascript.Mercoa.PaymentMethodType.OffPlatform);jr?ar(dr,jr.id):(wr=pr.client)==null||wr.entity.paymentMethod.create(fr,{type:javascript.Mercoa.PaymentMethodType.OffPlatform}).then(Ir=>{Ir&&ar(dr,Ir.id)})},[lr,fr,Mr]),jsxs("div",{className:"mercoa-mt-4",children:[jsx(MercoaCombobox,{options:yr.map(jr=>({value:jr,disabled:!1})),onChange:jr=>{ar(mr,jr.key)},value:yr.find(jr=>jr.key===Mr),displayIndex:"value"}),Mr&&Mr!=javascript.Mercoa.PaymentMethodType.OffPlatform&&jsxs("select",{...ce(dr),className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm mercoa-mt-4",children:[ee==null?void 0:ee.filter(jr=>{if(Mr===javascript.Mercoa.PaymentMethodType.BankAccount)return jr.type===javascript.Mercoa.PaymentMethodType.BankAccount;if(Mr===javascript.Mercoa.PaymentMethodType.Card)return jr.type===javascript.Mercoa.PaymentMethodType.Card;if(Mr===javascript.Mercoa.PaymentMethodType.Check)return jr.type===javascript.Mercoa.PaymentMethodType.Check;if(jr.type===javascript.Mercoa.PaymentMethodType.Custom)return jr.schemaId===Mr}).map(jr=>jsxs("option",{value:jr.id,children:[jr.type===javascript.Mercoa.PaymentMethodType.BankAccount&&jsxs(Fragment,{children:[jsx(BuildingLibraryIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.accountName?`${jr.accountName} - `:"",jr.bankName," ••••",String(jr.accountNumber).slice(-4)]}),jr.type===javascript.Mercoa.PaymentMethodType.Card&&jsxs(Fragment,{children:[jsx(CreditCardIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.cardBrand," ••••",jr.lastFour]}),jr.type===javascript.Mercoa.PaymentMethodType.Check&&jsxs(Fragment,{children:[jsx(EnvelopeIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.payToTheOrderOf,": ",jr.addressLine1]}),jr.type===javascript.Mercoa.PaymentMethodType.Custom&&jsxs(Fragment,{children:[jsx(BuildingLibraryIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),findCustomPaymentMethodAccountNameAndNumber(jr).accountName," ",findCustomPaymentMethodAccountNameAndNumber(jr).accountNumber?`••••${String(findCustomPaymentMethodAccountNameAndNumber(jr).accountNumber).slice(-4)}`:""]})]},jr.id)),lr&&((xr=(_r=pr.organization)==null?void 0:_r.paymentMethods)==null?void 0:xr.backupDisbursements.some(jr=>jr.active?jr.type==="custom"?jr.name===Mr:jr.type===Mr:!1))&&jsx("option",{value:"new",children:"Add New"})]}),Or==="new"&&jsxs("div",{className:"mercoa-mt-2",children:[Mr==="bankAccount"&&jsx(AddBankAccountForm,{register:ce,errors:te,watch:nr,setValue:ar,setError:ir,clearErrors:sr}),Mr==="check"&&jsx(AddCheckForm,{register:ce}),Mr.startsWith("cpms_")&&jsx(AddCustomPaymentMethodForm,{register:ce,control:or,schema:re==null?void 0:re.find(jr=>jr.id===Mr)})]})]})}function ApproversSelection({approverSlots:ee,selectedApprovers:re,setSelectedApprovers:ce,hasError:te,formOnChange:nr}){const or=useMercoaSession(),ar=(ir,sr,cr)=>{if(!Array.isArray(sr)&&!Array.isArray(cr))return[];const ur=or.users.filter(mr=>{if(mr.roles.some(dr=>sr.includes(dr))||cr.some(dr=>mr.id===dr))return!0}).map(mr=>{var pr;let dr=!1;return re.find(yr=>(yr==null?void 0:yr.assignedUserId)===mr.id)&&((pr=re[ir])==null?void 0:pr.assignedUserId)!==mr.id&&(dr=!0),{user:mr,disabled:dr}}),fr=ur.filter(mr=>!mr.disabled),hr=ur.filter(mr=>mr.disabled);return fr.concat(hr)};return jsxs("div",{className:"mercoa-space-y-4",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-7 mercoa-text-gray-900 mercoa-mt-5",children:"Approvals"}),te&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:"Please assign all approvers for this invoice."}),ee.map((ir,sr)=>jsx(ApproverCombobox,{options:ar(sr,ir.eligibleRoles,ir.eligibleUserIds),selectedApprover:or.users.filter(cr=>{if(cr.id===ir.assignedUserId)return!0})[0],setSelectedApprover:cr=>{ce(sr,{assignedUserId:cr,approvalSlotId:ir.approvalSlotId},nr)}},sr))]})}function ApproverCombobox({options:ee,selectedApprover:re,setSelectedApprover:ce}){return jsx(MercoaCombobox,{label:"Assigned to",onChange:te=>{ce(te.id)},value:re,options:ee.map(te=>({disabled:te.disabled,value:te.user})),displayIndex:"name",secondaryDisplayIndex:"email",disabledText:"Already assigned"})}function ApproversAction({approverSlots:ee,invoiceId:re,invoiceStatus:ce,refreshInvoice:te}){const nr=useMercoaSession(),or=ee.find(ir=>{var sr;return ir.assignedUserId===((sr=nr.user)==null?void 0:sr.id)}),ar=ir=>nr.users.find(cr=>cr.id===ir.assignedUserId);return jsxs("div",{className:"mercoa-space-y-4",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-7 mercoa-text-gray-900 mercoa-mt-5",children:"Approvals"}),ee.map(ir=>{let sr=ar(ir);if(sr)return jsx(ApproverWell,{approverSlot:ir,approver:sr},sr.id)}),or&&ce===javascript.Mercoa.InvoiceStatus.New&&jsx(ApproverActionButton,{approverSlot:or,invoiceId:re,refreshInvoice:te})]})}function ApproverWell({approverSlot:ee,approver:re}){let ce="",te;return ee.action===javascript.Mercoa.ApproverAction.None?(ce="mercoa-bg-gray-50",te=jsx(Fragment,{})):ee.action===javascript.Mercoa.ApproverAction.Approve?(ce="mercoa-bg-green-50",te=jsx(CheckCircleIcon$1,{className:"mercoa-h-8 mercoa-w-8 mercoa-text-green-400","aria-hidden":"true"})):ee.action===javascript.Mercoa.ApproverAction.Reject&&(ce="mercoa-bg-red-50",te=jsx(XCircleIcon$1,{className:"mercoa-h-8 mercoa-w-8 mercoa-text-red-400","aria-hidden":"true"})),jsx(Fragment,{children:jsx("div",{className:"mercoa-flex mercoa-items-center",children:jsx("div",{className:"mercoa-flex-auto",children:jsxs("div",{className:classNames("mercoa-flex mercoa-items-center mercoa-rounded-md",ce),children:[jsxs("div",{className:"mercoa-flex-auto mercoa-p-3",children:[jsx("div",{className:classNames("mercoa-text-sm mercoa-font-medium","mercoa-text-grey-900"),children:re.name}),jsx("div",{className:"mercoa-text-sm mercoa-text-gray-500",children:re.email})]}),jsx("div",{className:"mercoa-mx-4 mercoa-flex-shrink-0 mercoa-p-1 mercoa-text-mercoa-primary-text hover:mercoa-opacity-75",children:te})]})})})})}function ApproverActionButton({approverSlot:ee,invoiceId:re,refreshInvoice:ce}){const te=useMercoaSession(),nr=()=>{var ir;const ar={userId:ee.assignedUserId??""};ar.userId&&((ir=te.client)==null||ir.invoice.approval.approve(re,ar).then(()=>{Q$1.success("Invoice approved"),ce(re)}).catch(sr=>{console.log(sr),Q$1.error("There was an error approving this invoice. Please try again.")}))},or=()=>{var ir;const ar={userId:ee.assignedUserId??""};ar.userId&&((ir=te.client)==null||ir.invoice.approval.reject(re,ar).then(()=>{Q$1.success("Invoice rejected"),ce(re)}).catch(sr=>{console.log(sr),Q$1.error("There was an error rejecting this invoice. Please try again.")}))};return jsxs("div",{className:"mercoa-flex mercoa-items-center mercoa-justify-end mercoa-gap-x-2",children:[jsx(MercoaButton,{disabled:ee.action===javascript.Mercoa.ApproverAction.Reject,color:"red",isEmphasized:!0,onClick:or,type:"button",children:"Reject"}),jsx(MercoaButton,{disabled:ee.action===javascript.Mercoa.ApproverAction.Approve,color:"green",isEmphasized:!0,onClick:nr,type:"button",children:"Approve"})]})}function MetadataSelection({schema:ee,value:re,entityMetadata:ce,setValue:te,hasDocument:nr,paymentDestination:or,paymentSource:ar,lineItem:ir,skipValidation:sr}){var lr,ur,fr,hr,mr,dr,pr,yr;if(React$1.useState(!re),ce&&(ce.value=ce.value.filter(Mr=>Mr),ee.type===javascript.Mercoa.MetadataType.KeyValue&&(ce.value=ce.value.filter(Mr=>{try{const Or=dJSON.parse(Mr);return Or.key&&Or.value}catch(Or){console.error(Or)}return!1})),(ce==null?void 0:ce.value.length)===0&&(ce=void 0)),!sr){if((lr=ee.showConditions)!=null&&lr.hasDocument&&!nr)return jsx(Fragment,{});if(ee.type===javascript.Mercoa.MetadataType.KeyValue&&!ce)return jsx(Fragment,{});if((ur=ee.showConditions)!=null&&ur.hasOptions&&!ce)return jsx(Fragment,{});if(ee.lineItem&&!ir)return jsx(Fragment,{});if((fr=ee.showConditions)!=null&&fr.paymentDestinationTypes&&ee.showConditions.paymentDestinationTypes.length>0){if(!or)return jsx(Fragment,{});if(!ee.showConditions.paymentDestinationTypes.includes(or.type))return jsx(Fragment,{});if(ee.showConditions.paymentDestinationTypes.includes("custom")){if(or.type!=javascript.Mercoa.PaymentMethodType.Custom)return jsx(Fragment,{});if(!((mr=(hr=ee.showConditions)==null?void 0:hr.paymentDestinationCustomSchemaIds)!=null&&mr.includes(or.schemaId)))return jsx(Fragment,{})}}if((dr=ee.showConditions)!=null&&dr.paymentSourceTypes&&ee.showConditions.paymentSourceTypes.length>0){if(!ar)return jsx(Fragment,{});if(!ee.showConditions.paymentSourceTypes.includes(ar.type))return jsx(Fragment,{});if(ee.showConditions.paymentSourceTypes.includes("custom")){if(ar.type!=javascript.Mercoa.PaymentMethodType.Custom)return jsx(Fragment,{});if(!((yr=(pr=ee.showConditions)==null?void 0:pr.paymentSourceCustomSchemaIds)!=null&&yr.includes(ar.schemaId)))return jsx(Fragment,{})}}}const cr=jsxs(Fragment,{children:[(ee.type===javascript.Mercoa.MetadataType.String||ee.type===javascript.Mercoa.MetadataType.Number||ee.type===javascript.Mercoa.MetadataType.KeyValue)&&jsx(MetadataCombobox,{schema:ee,setValue:te,value:re,values:(ce==null?void 0:ce.value)??[]}),ee.type===javascript.Mercoa.MetadataType.Boolean&&jsx(MetadataBoolean,{schema:ee,setValue:te,value:re}),ee.type===javascript.Mercoa.MetadataType.Date&&jsx(MetadataDate,{setValue:te,value:re,displayName:ee.displayName})]});return ir?cr:jsxs("div",{children:[jsx("h3",{className:"mercoa-mt-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:ee.displayName}),cr]})}function MetadataCombobox({schema:ee,setValue:re,value:ce,values:te}){let nr=ce;return ee.allowMultiple&&(Array.isArray(ce)?nr=ce:nr=ce==null?void 0:ce.split(",")),ee.type===javascript.Mercoa.MetadataType.KeyValue?jsx(MercoaCombobox,{options:te.map(or=>{let ar={key:"",value:""};try{ar=dJSON.parse(or),ar.value=`${ar.value}`,ar.key=`${ar.key}`}catch(ir){console.error(ir)}return{value:ar,disabled:!1}}),onChange:or=>{re(or.key)},displayIndex:"value",value:dJSON.parse(te.find(or=>{let ar={key:"",value:""};try{ar=dJSON.parse(or),ar.value=`${ar.value}`,ar.key=`${ar.key}`}catch(ir){console.error(ir)}return(ar==null?void 0:ar.key)===`${ce??""}`})??"{}"),multiple:ee.allowMultiple}):jsx(MercoaCombobox,{options:te.map(or=>({value:or,disabled:!1})),onChange:or=>{re(or)},value:nr,multiple:ee.allowMultiple,freeText:!0})}function MetadataDate({setValue:ee,value:re,displayName:ce}){return jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 sm:mercoa-text-sm",placeholderText:`Select ${ce}`,onChange:te=>{te&&ee(te.toISOString())},selected:(()=>{if(dayjs$1(re).isValid())return dayjs$1(re).toDate()})()})}function MetadataBoolean({schema:ee,setValue:re,value:ce}){return jsxs("div",{className:"mercoa-space-y-4 sm:mercoa-flex sm:mercoa-items-center sm:mercoa-space-x-10 sm:mercoa-space-y-0",children:[jsxs("div",{className:"mercoa-flex mercoa-items-center",children:[jsx("input",{type:"radio",name:`true-false-${ee.key}`,defaultChecked:ce==="true",className:"mercoa-h-4 mercoa-w-4 mercoa-border-gray-300 mercoa-text-mercoa-primary focus:mercoa-ring-mercoa-primary",onChange:()=>re("true")}),jsx("label",{htmlFor:`true-false-${ee.key}`,className:"mercoa-ml-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Yes"})]}),jsxs("div",{className:"mercoa-flex mercoa-items-center",children:[jsx("input",{type:"radio",name:`true-false-${ee.key}`,defaultChecked:ce==="false",className:"mercoa-h-4 mercoa-w-4 mercoa-border-gray-300 mercoa-text-mercoa-primary focus:mercoa-ring-mercoa-primary",onChange:()=>re("false")}),jsx("label",{htmlFor:`true-false-${ee.key}`,className:"mercoa-ml-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"No"})]})]})}function LineItems({lineItems:ee,append:re,remove:ce,register:te,currency:nr,watch:or,setValue:ar,entityMetadata:ir,paymentDestination:sr,paymentSource:cr,hasDocument:lr,width:ur}){var hr,mr;const fr=useMercoaSession();return jsxs("div",{className:"mercoa-grid mercoa-grid-cols-1 mercoa-gap-x-6 mercoa-gap-y-4",children:[jsxs("div",{className:"mercoa-flex mercoa-items-center mercoa-mt-5",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-6 mercoa-text-gray-700 mercoa-text-lg",children:"Line Items"}),jsxs("button",{onClick:()=>{re({name:"",description:"",amount:0,unitPrice:0,quantity:1})},type:"button",className:"mercoa-ml-4 mercoa-flex-shrink-0 mercoa-col-span-1",children:[jsx(Tooltip,{title:"Add line item",children:jsx(PlusCircleIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-gray-400 hover:mercoa-opacity-75","aria-hidden":"true"})}),jsx("span",{className:"mercoa-sr-only",children:"Add line item"})]})]}),jsxs("div",{className:"mercoa-overflow-x-hidden hover:mercoa-overflow-x-visible mercoa-pointer-events-none",children:[jsxs("table",{className:"mercoa-min-w-full mercoa-divide-y mercoa-divide-gray-300 mercoa-w-[600px] mercoa-relative mercoa-mb-6 pointer-events-auto",id:"lineItemsTable",children:[jsx("thead",{children:jsxs("tr",{className:"mercoa-divide-x mercoa-divide-gray-200",children:[jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-min-w-[300px]",children:"Description"}),(mr=(hr=fr.organization)==null?void 0:hr.metadataSchema)==null?void 0:mr.filter(dr=>dr.lineItem).map(dr=>jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-min-w-[200px]",children:dr.displayName},dr.key)),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Qty"}),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Price"}),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Amount"}),jsx("th",{children:jsx("span",{className:"mercoa-sr-only",children:"Remove"})})]})}),jsx("tbody",{className:"mercoa-divide-y mercoa-divide-gray-200 mercoa-bg-white",children:ee==null?void 0:ee.map((dr,pr)=>jsx(LineItemRow,{currency:nr,index:pr,remove:ce,register:te,watch:or,setValue:ar,entityMetadata:ir,paymentDestination:sr,paymentSource:cr,hasDocument:lr},dr.id))})]}),jsx(LineItemScrollBar,{width:ur})]})]})}function LineItemScrollBar({width:ee}){const re=ee/730*ee,ce=document.getElementById("lineItemsTable");function te(nr){if(ce){const or=ee-re,ar=nr.x/or,sr=((ce==null?void 0:ce.offsetWidth)??0)-re;ce.style.left=`-${ar*sr}px`}}return ee>730?(te({x:0}),jsx(Fragment,{})):jsx("div",{className:"mercoa-w-full mercoa-h-[10px] mercoa-bg-gray-100 mercoa-relative pointer-events-auto",children:jsx(Draggable$1,{axis:"x",bounds:"parent",onDrag:(nr,or)=>te(or),children:jsx("div",{className:"mercoa-h-[10px] mercoa-bg-gray-300 hover:mercoa-bg-gray-400 mercoa-absolute mercoa-top-0",style:{width:`${re}px`}})})})}function LineItemRow({currency:ee,index:re,remove:ce,register:te,watch:nr,setValue:or,entityMetadata:ar,paymentDestination:ir,paymentSource:sr,hasDocument:cr}){var ur,fr;const lr=useMercoaSession();return jsxs("tr",{className:"mercoa-divide-x mercoa-divide-gray-200",children:[jsxs("td",{className:"mercoa-whitespace-nowrap mercoa-p-1 mercoa-text-sm mercoa-text-gray-500",children:[" ",jsx("input",{type:"text",className:`mercoa-block mercoa-w-full mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900
|
|
173
|
+
${currencyCodeToSymbol(Sr).length>1?"mercoa-pl-12":"mercoa-pl-6"}`,placeholder:"0.00"}),jsxs("div",{className:"mercoa-absolute mercoa-inset-y-0 mercoa-right-0 mercoa-flex mercoa-items-center",children:[jsx("label",{htmlFor:"currency",className:"mercoa-sr-only",children:"Currency"}),jsx("select",{...Lr("currency"),className:"mercoa-h-full mercoa-rounded-md mercoa-border-0 mercoa-bg-transparent mercoa-py-0 mercoa-pl-2 mercoa-pr-7 mercoa-text-gray-500 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",children:dr.map((Tn,Bn)=>jsx("option",{value:Tn,children:Tn},Bn))})]})]}),((mn=Yr.amount)==null?void 0:mn.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Wr=Yr.amount)==null?void 0:Wr.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"invoiceDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Invoice Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"invoiceDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Select invoice date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value})})}),((Pn=Yr.invoiceDate)==null?void 0:Pn.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Un=Yr.invoiceDate)==null?void 0:Un.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"dueDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Due Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"dueDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Select due date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value})})}),((Hr=Yr.dueDate)==null?void 0:Hr.message)&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:(Fn=Yr.dueDate)==null?void 0:Fn.message.toString()})]}),jsxs("div",{className:"mercoa-col-span-1",children:[jsx("label",{htmlFor:"deductionDate",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900 mercoa-whitespace-nowrap",children:"Scheduled Payment Date"}),jsx("div",{className:"mercoa-relative mercoa-mt-2",children:jsx(Controller,{control:Fr,name:"deductionDate",render:({field:Tn})=>jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm",placeholderText:"Scheduled payment date",onChange:Bn=>Tn.onChange(Bn),selected:Tn.value,minDate:dayjs$1().add(1,"day").toDate(),filterDate:isWeekday})})})]}),jsxs("div",{className:"mercoa-col-span-full",children:[jsx("label",{htmlFor:"description",className:"mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900 ",children:"Description"}),jsx("div",{className:"mercoa-mt-2",children:jsx("textarea",{id:"description",...Lr("description"),rows:3,className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900 mercoa-shadow-sm mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6",defaultValue:""})})]}),!((On=(an=(pn=sr.iframeOptions)==null?void 0:pn.options)==null?void 0:an.invoice)!=null&&On.disableLineItems)&&jsxs(Fragment,{children:[jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsx("div",{className:"mercoa-col-span-full",children:jsx(LineItems,{lineItems:Ar,append:Gr,remove:on,register:Lr,currency:Sr,watch:Nr,hasDocument:!!ce||!!(ee!=null&&ee.hasDocuments),paymentDestination:hr.find(Tn=>Tn.id===gr),paymentSource:cr.find(Tn=>Tn.id===$r),setValue:nn,entityMetadata:br,width:Br})})]}),(((qn=(kn=(xn=sr.organization)==null?void 0:xn.metadataSchema)==null?void 0:kn.filter(Tn=>!Tn.lineItem))==null?void 0:qn.length)??0)>0&&jsxs(Fragment,{children:[jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsx("label",{htmlFor:"vendor-name",className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mb-2 mercoa-col-span-full",children:"Additional Invoice Details"}),(Gn=(Kn=sr.organization)==null?void 0:Kn.metadataSchema)==null?void 0:Gn.map(Tn=>{const Bn=JSON.parse(kr??{}),Wn=Bn==null?void 0:Bn[Tn.key];return jsx("div",{className:"mercoa-col-span-full",children:jsx(MetadataSelection,{entityMetadata:br.find(Vn=>Vn.key===Tn.key),schema:Tn,value:Wn,hasDocument:!!ce||!!(ee!=null&&ee.hasDocuments),paymentDestination:hr.find(Vn=>Vn.id===gr),paymentSource:cr.find(Vn=>Vn.id===$r),setValue:Vn=>{Array.isArray(Vn)&&(Vn=Vn.join(","));const Hn=JSON.parse(kr??{});Hn[Tn.key]=`${Vn}`,nn("metadata",JSON.stringify(Hn),{shouldDirty:!0,shouldTouch:!0})}})},Tn.key)})]}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-6 mercoa-col-span-full"}),jsxs("div",{className:"mercoa-pb-6 mercoa-col-span-full",children:[jsx("h2",{className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mt-5",children:"How do you want to pay?"}),ar&&cr.length<1&&(($n=(Yn=(Qn=sr.iframeOptions)==null?void 0:Qn.options)==null?void 0:Yn.entity)!=null&&$n.enableMercoaPayments)?jsx(MercoaButton,{isEmphasized:!0,type:"button",onClick:ar,size:"md",children:"Add Payment Method"}):jsx(SelectPaymentSource,{paymentMethods:cr,paymentMethodSchemas:ur,currentPaymentMethodId:ee==null?void 0:ee.paymentSourceId,isSource:!0,register:Lr,watch:Nr,errors:Yr,control:Fr,setValue:nn,setError:tn,clearErrors:rn})]}),Pr&&jsxs("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-pb-16 mercoa-col-span-full",children:[jsxs("h2",{className:"mercoa-block mercoa-text-lg mercoa-font-medium mercoa-leading-6 mercoa-text-gray-700 mercoa-mt-5",children:["How does ",jsx("span",{className:"mercoa-text-gray-800 mercoa-underline",children:Pr})," want to get paid?"]}),jsx(SelectPaymentSource,{paymentMethods:hr,paymentMethodSchemas:ur,currentPaymentMethodId:ee==null?void 0:ee.paymentDestinationId,isDestination:!0,vendorName:Pr,vendorId:Tr,register:Lr,watch:Nr,errors:Yr,control:Fr,setValue:nn,setError:tn,clearErrors:rn}),(ee==null?void 0:ee.id)&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Canceled&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Archived&&!((Mn=(bn=(en=sr.iframeOptions)==null?void 0:en.options)==null?void 0:bn.vendors)!=null&&Mn.disableCreation)&&jsxs(MercoaButton,{isEmphasized:!1,onClick:Sn,className:"mercoa-inline-flex mercoa-text-sm mercoa-float-right mercoa-mt-3",type:"button",children:[jsx(DocumentDuplicateIcon$1,{className:"mercoa-h-5 mercoa-w-5 md:mercoa-mr-2"})," ",jsx("span",{className:"mercoa-hidden md:mercoa-inline-block",children:"Get Payment Acceptance Link"})]})]}),jsx("div",{className:"mercoa-col-span-full",children:(ee==null?void 0:ee.approvers)&&ee.approvers.length>0&&Or&&jsxs(Fragment,{children:[ee.status===javascript.Mercoa.InvoiceStatus.Draft?jsx(Controller,{control:Fr,name:"approvers",render:({field:{onChange:Tn}})=>{var Bn;return jsx(ApproversSelection,{approverSlots:ee.approvers,selectedApprovers:Or,setSelectedApprovers:fn,hasError:!!((Bn=Yr.approvers)!=null&&Bn.message),formOnChange:Tn})}}):jsx(ApproversAction,{approverSlots:ee.approvers,invoiceId:ee.id,invoiceStatus:ee.status,refreshInvoice:or}),Yr.approvers&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:"Please select all approvers"})]})}),jsx("div",{className:"mercoa-col-span-full",style:{visibility:"hidden"},children:jsx(ErrorOverview,{errors:Yr,clearErrors:rn})}),(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Canceled&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Archived&&(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Paid&&jsxs("div",{className:"mercoa-absolute mercoa-bottom-0 mercoa-right-0 mercoa-w-full mercoa-bg-white mercoa-z-10",children:[jsx(ErrorOverview,{errors:Yr,clearErrors:rn}),jsxs("div",{className:" mercoa-container mercoa-mx-auto mercoa-flex mercoa-flex-row-reverse mercoa-items-center mercoa-gap-2 mercoa-py-3 mercoa-px-4 sm:mercoa-px-6 lg:mercoa-px-8",children:[(ee==null?void 0:ee.status)!=javascript.Mercoa.InvoiceStatus.Scheduled&&jsxs(Fragment,{children:[!((En=(ln=(Cn=sr.iframeOptions)==null?void 0:Cn.options)==null?void 0:ln.vendors)!=null&&En.disableCreation)&&yr&&!(yr!=null&&yr.email)&&jsx(MercoaButton,{isEmphasized:!0,disabled:!0,children:"Vendor Email Required"}),jsx(SaveInvoiceButton,{nextInvoiceState:Dn,setValue:nn,approvers:ee==null?void 0:ee.approvers,approverSlots:Rr,isSaving:xr}),Dn==="NEW"&&(ee==null?void 0:ee.status)!=="NEW"&&jsx(MercoaButton,{isEmphasized:!1,onClick:()=>nn("saveAsDraft",!0),disabled:xr,children:"Save Draft"})]}),((ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Scheduled||(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Pending)&&((In=ee==null?void 0:ee.paymentDestination)==null?void 0:In.type)===javascript.Mercoa.PaymentMethodType.OffPlatform&&jsx(MercoaButton,{disabled:xr,isEmphasized:!0,onClick:()=>{var Tn;ee!=null&&ee.id&&(jr(!0),confirm("Are you sure you want to mark this invoice as paid? This cannot be undone.")&&((Tn=sr.client)==null||Tn.invoice.update(ee==null?void 0:ee.id,{status:javascript.Mercoa.InvoiceStatus.Paid}).then(Bn=>{Bn&&(console.log(Bn),Q$1.success("Invoice marked as paid"),or(Bn.id)),jr(!1)})))},children:"Mark as Paid"}),jsx(CancelPayment,{invoice:ee,refreshInvoice:or,onRedirect:nr})]})]})]}),jsx("div",{className:"mercoa-border-b mercoa-border-gray-900/10 mercoa-mb-4"}),ee!=null&&ee.id&&ee.id!=="new"?jsx(InvoiceComments,{invoice:ee}):jsx("div",{className:"mercoa-mt-10"}),jsx("div",{className:"mercoa-mt-20"})]})}function ErrorOverview({errors:ee,clearErrors:re}){const ce=Object.keys(ee);if(ce.length===0)return null;const te={invoiceNumber:"Invoice Number",amount:"Amount",invoiceDate:"Invoice Date",dueDate:"Due Date",deductionDate:"Scheduled Payment Date",currency:"Currency",vendorId:"Vendor",paymentSourceId:"Payment Source",paymentDestinationId:"Payment Destination",approvers:"Approvers",lineItems:"Line Items"},nr={approvers:"Please select all approvers",lineItems:"Please make sure all line items have a description. Amount, quantity, and unit price must be positive numbers."};return jsxs("div",{className:"mercoa-bg-red-50 mercoa-border-l-4 mercoa-border-red-400 mercoa-p-4 mercoa-relative",children:[jsxs("button",{type:"button",className:"mercoa-absolute mercoa-top-1 mercoa-right-1 mercoa-p-1 mercoa-rounded-md hover:mercoa-bg-red-100 focus:mercoa-outline-none focus:mercoa-bg-red-100",onClick:()=>re(),children:[jsx("span",{className:"mercoa-sr-only",children:"Close"}),jsx(XMarkIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-gray-400","aria-hidden":"true"})]}),jsxs("div",{className:"mercoa-flex",children:[jsx("div",{className:"mercoa-flex-shrink-0",children:jsx(ExclamationCircleIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-red-400","aria-hidden":"true"})}),jsxs("div",{className:"mercoa-ml-3",children:[jsx("h3",{className:"mercoa-text-sm mercoa-font-medium mercoa-text-red-800",children:"There were errors with your submission"}),jsx("div",{className:"mercoa-mt-2 mercoa-text-sm mercoa-text-red-700",children:jsx("ul",{className:"mercoa-list-disc mercoa-pl-5 mercoa-space-y-1",children:ce.map(or=>{var ar;return jsx("li",{children:`${te[or]}: ${((ar=ee[or])==null?void 0:ar.message)??nr[or]??""}`},or)})})})]})]})]})}function SaveInvoiceButton({nextInvoiceState:ee,setValue:re,approverSlots:ce,approvers:te,isSaving:nr}){let or="Next";switch(ee){case javascript.Mercoa.InvoiceStatus.Draft:or="Save Draft";break;case javascript.Mercoa.InvoiceStatus.New:te&&te.length>0?or="Submit for Approval":or="Next";break;case javascript.Mercoa.InvoiceStatus.Approved:or="Missing Vendor Payment Details";break;case javascript.Mercoa.InvoiceStatus.Scheduled:or="Schedule Payment";break}return ee===javascript.Mercoa.InvoiceStatus.Approved&&te&&te.length>0&&te.every(ar=>ar.assignedUserId)&&!te.every(ar=>ar.action===javascript.Mercoa.ApproverAction.Approve)?jsx("span",{className:"mercoa-text-center mercoa-text-gray-800 mercoa-font-medium mercoa-p-3 mercoa-rounded-md mercoa-bg-gray-50",children:"Waiting for approval"}):or==="Submit for Approval"&&ce&&ce.length>0&&!ce.every(ar=>ar.assignedUserId)?jsx(MercoaButton,{type:"submit",isEmphasized:!0,onClick:()=>re("saveAsDraft",!1),disabled:!0,children:"Please assign all approvers"}):jsx(MercoaButton,{type:"submit",isEmphasized:!0,onClick:()=>re("saveAsDraft",!1),disabled:nr,children:or})}function CancelPayment({invoice:ee,refreshInvoice:re,onRedirect:ce}){const te=useMercoaSession(),[nr,or]=React$1.useState(!1),ar=React$1.useRef(null);function ir(){var ur,fr,hr;ee!=null&&ee.id&&(ee.status===javascript.Mercoa.InvoiceStatus.Draft?((ur=te.client)==null||ur.invoice.delete(ee.id),Q$1.success("Invoice deleted"),ce(void 0)):ee.status===javascript.Mercoa.InvoiceStatus.New||ee.status===javascript.Mercoa.InvoiceStatus.Approved?(fr=te.client)==null||fr.invoice.update(ee.id,{status:javascript.Mercoa.InvoiceStatus.Archived}).then(mr=>{mr&&(console.log(mr),Q$1.success("Invoice archived"),re(mr.id))}):ee.status===javascript.Mercoa.InvoiceStatus.Scheduled&&((hr=te.client)==null||hr.invoice.update(ee.id,{status:javascript.Mercoa.InvoiceStatus.Canceled}).then(mr=>{mr&&(console.log(mr),Q$1.success("Invoice canceled"),re(mr.id))})))}let sr="Cancel Payment",cr="Are you sure you want to cancel this invoice? This cannot be undone and the payment will be canceled.";(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Draft?(sr="Delete Invoice",cr="Are you sure you want to delete this invoice? This cannot be undone."):((ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.New||(ee==null?void 0:ee.status)===javascript.Mercoa.InvoiceStatus.Approved)&&(sr="Archive Invoice",cr="Are you sure you want to archive this invoice?");const lr=[javascript.Mercoa.InvoiceStatus.Pending,javascript.Mercoa.InvoiceStatus.Paid,javascript.Mercoa.InvoiceStatus.Canceled,javascript.Mercoa.InvoiceStatus.Archived,void 0];return jsx(Fragment,{children:!lr.includes(ee==null?void 0:ee.status)&&jsxs(Fragment,{children:[jsx(MercoaButton,{type:"button",isEmphasized:!1,color:"red",onClick:()=>or(!0),children:sr}),jsx(tt$1.Root,{show:nr,as:React$1.Fragment,children:jsxs(_t$1,{as:"div",className:"mercoa-relative mercoa-z-10",onClose:()=>or(!1),initialFocus:ar,children:[jsx(tt$1.Child,{as:React$1.Fragment,enter:"mercoa-ease-out mercoa-duration-300",enterFrom:"mercoa-opacity-0",enterTo:"mercoa-opacity-100",leave:"mercoa-ease-in mercoa-duration-200",leaveFrom:"mercoa-opacity-100",leaveTo:"mercoa-opacity-0",children:jsx("div",{className:"mercoa-fixed mercoa-inset-0 mercoa-bg-gray-500 mercoa-bg-mercoa-opacity-75 mercoa-transition-opacity"})}),jsx("div",{className:"mercoa-fixed mercoa-inset-0 mercoa-z-10 mercoa-overflow-y-auto",children:jsx("div",{className:"mercoa-flex mercoa-min-h-full mercoa-items-end mercoa-justify-center mercoa-p-4 mercoa-text-center sm:mercoa-items-center sm:mercoa-p-0",children:jsx(tt$1.Child,{as:React$1.Fragment,enter:"mercoa-ease-out mercoa-duration-300",enterFrom:"mercoa-opacity-0 mercoa-translate-y-4 sm:mercoa-translate-y-0 sm:mercoa-scale-95",enterTo:"mercoa-opacity-100 mercoa-translate-y-0 sm:mercoa-scale-100",leave:"mercoa-ease-in mercoa-duration-200",leaveFrom:"mercoa-opacity-100 mercoa-translate-y-0 sm:mercoa-scale-100",leaveTo:"mercoa-opacity-0 mercoa-translate-y-4 sm:mercoa-translate-y-0 sm:mercoa-scale-95",children:jsxs(_t$1.Panel,{className:"mercoa-relative mercoa-transform mercoa-overflow-hidden mercoa-rounded-lg mercoa-bg-white mercoa-px-4 mercoa-pb-4 mercoa-pt-5 mercoa-text-left mercoa-shadow-xl mercoa-transition-all sm:mercoa-my-8 sm:mercoa-w-full sm:mercoa-max-w-lg sm:mercoa-p-6",children:[jsxs("div",{className:"sm:mercoa-flex sm:mercoa-items-start",children:[jsx("div",{className:"mercoa-mx-auto mercoa-flex mercoa-h-12 mercoa-w-12 mercoa-flex-shrink-0 mercoa-items-center mercoa-justify-center mercoa-rounded-full mercoa-bg-red-100 sm:mercoa-mx-0 sm:mercoa-h-10 sm:mercoa-w-10",children:jsx(ExclamationTriangleIcon$1,{className:"mercoa-h-6 mercoa-w-6 mercoa-text-red-600","aria-hidden":"true"})}),jsxs("div",{className:"mercoa-mt-3 mercoa-text-center sm:mercoa-ml-4 sm:mercoa-mt-0 sm:mercoa-text-left",children:[jsx(_t$1.Title,{as:"h3",className:"mercoa-text-base mercoa-font-semibold mercoa-leading-6 mercoa-text-gray-900",children:sr}),jsx("div",{className:"mercoa-mt-2",children:jsx("p",{className:"mercoa-text-sm mercoa-text-gray-500",children:cr})})]})]}),jsxs("div",{className:"mercoa-mt-5 sm:mercoa-mt-4 sm:mercoa-flex sm:mercoa-flex-row-reverse",children:[jsx("button",{type:"button",className:"mercoa-inline-flex mercoa-w-full mercoa-justify-center mercoa-rounded-md mercoa-bg-red-600 mercoa-px-3 mercoa-py-2 mercoa-text-sm mercoa-font-semibold mercoa-text-white mercoa-shadow-sm hover:mercoa-bg-red-500 sm:mercoa-ml-3 sm:mercoa-w-auto",onClick:ir,children:sr}),jsx("button",{type:"button",className:"mercoa-mt-3 mercoa-inline-flex mercoa-w-full mercoa-justify-center mercoa-rounded-md mercoa-bg-white mercoa-px-3 mercoa-py-2 mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-shadow-sm mercoa-ring-1 mercoa-ring-inset mercoa-ring-gray-300 hover:mercoa-bg-gray-50 sm:mercoa-mt-0 sm:mercoa-w-auto",onClick:()=>or(!1),ref:ar,children:"Never mind"})]})]})})})})]})})]})})}function SelectPaymentSource({paymentMethods:ee,paymentMethodSchemas:re,register:ce,errors:te,watch:nr,control:or,setValue:ar,setError:ir,clearErrors:sr,isSource:cr,isDestination:lr,vendorName:ur,vendorId:fr,currentPaymentMethodId:hr}){var Er,br,_r,xr;let mr="paymentMethodSourceType",dr="paymentSourceId";lr&&(mr="paymentMethodDestinationType",dr="paymentDestinationId");const pr=useMercoaSession(),yr=[];ee.some(jr=>jr.type==="bankAccount")&&yr.push({key:"bankAccount",value:"Bank Account"}),ee.some(jr=>jr.type==="card")&&yr.push({key:"card",value:"Card"}),ee.some(jr=>jr.type==="check")&&yr.push({key:"check",value:"Check"}),ee.forEach(jr=>{if(jr.type==="custom"){if(yr.some(wr=>wr.key===jr.schemaId))return;yr.push({key:jr.schemaId??"",value:jr.schema.name??""})}}),lr&&((br=(Er=pr.organization)==null?void 0:Er.paymentMethods)==null||br.backupDisbursements.forEach(jr=>{var wr;jr.active&&(yr.some(Ir=>{if(Ir.key===jr.type)return!0;if(jr.type==="custom"){const Br=re.find(Cr=>Cr.id==jr.name);if(Br&&Ir.key===Br.id)return!0}return!1})||(jr.type!="custom"?yr.push({key:jr.type,value:jr.name}):yr.push({key:jr.name,value:((wr=re.find(Ir=>Ir.id==jr.name))==null?void 0:wr.name)??"Other"})))}));const Mr=nr(mr),Or=nr(dr);return React$1.useEffect(()=>{if(hr){const jr=ee.find(wr=>wr.id===hr);if(jr){jr.type==="custom"?ar(mr,jr.schemaId):ar(mr,jr.type);return}}if(cr){const jr=ee.find(wr=>wr.isDefaultSource);if(jr){ar(mr,jr.type);return}}if(lr){const jr=ee.find(wr=>wr.isDefaultDestination);if(jr){ar(mr,jr.type);return}}if(ee.some(jr=>jr.type==="bankAccount"))ar(mr,"bankAccount");else if(ee.some(jr=>jr.type==="card"))ar(mr,"card");else if(ee.some(jr=>jr.type==="check"))ar(mr,"check");else if(ee.some(jr=>jr.type==="custom")){let jr=ee.find(wr=>wr.type==="custom");(jr==null?void 0:jr.type)==="custom"&&ar(mr,jr==null?void 0:jr.schemaId)}},[ee]),React$1.useEffect(()=>{var jr,wr,Ir,Br;if(cr){const Cr=ee.find(Ur=>Ur.isDefaultSource);if(Cr){ar(dr,Cr.id);return}}if(lr){const Cr=ee.find(Ur=>Ur.isDefaultDestination);if(Cr){ar(dr,Cr.id);return}}if(hr){const Cr=ee.find(Ur=>Ur.id===hr);if(Cr){ar(dr,Cr.id);return}}Mr==="bankAccount"?ar(dr,(jr=ee.find(Cr=>Cr.type==="bankAccount"))==null?void 0:jr.id):Mr==="card"?ar(dr,(wr=ee.find(Cr=>Cr.type==="card"))==null?void 0:wr.id):Mr==="check"?ar(dr,(Ir=ee.find(Cr=>Cr.type==="check"))==null?void 0:Ir.id):ar(dr,(Br=ee.find(Cr=>Cr.type==="custom"&&Cr.schemaId===Mr))==null?void 0:Br.id)},[Mr,ee]),React$1.useEffect(()=>{var wr;if(!lr||!fr||Mr!==javascript.Mercoa.PaymentMethodType.OffPlatform)return;const jr=ee.find(Ir=>Ir.type===javascript.Mercoa.PaymentMethodType.OffPlatform);jr?ar(dr,jr.id):(wr=pr.client)==null||wr.entity.paymentMethod.create(fr,{type:javascript.Mercoa.PaymentMethodType.OffPlatform}).then(Ir=>{Ir&&ar(dr,Ir.id)})},[lr,fr,Mr]),jsxs("div",{className:"mercoa-mt-4",children:[jsx(MercoaCombobox,{options:yr.map(jr=>({value:jr,disabled:!1})),onChange:jr=>{ar(mr,jr.key)},value:yr.find(jr=>jr.key===Mr),displayIndex:"value"}),Mr&&Mr!=javascript.Mercoa.PaymentMethodType.OffPlatform&&jsxs("select",{...ce(dr),className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 focus:mercoa-border-mercoa-primary focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm mercoa-mt-4",children:[ee==null?void 0:ee.filter(jr=>{if(Mr===javascript.Mercoa.PaymentMethodType.BankAccount)return jr.type===javascript.Mercoa.PaymentMethodType.BankAccount;if(Mr===javascript.Mercoa.PaymentMethodType.Card)return jr.type===javascript.Mercoa.PaymentMethodType.Card;if(Mr===javascript.Mercoa.PaymentMethodType.Check)return jr.type===javascript.Mercoa.PaymentMethodType.Check;if(jr.type===javascript.Mercoa.PaymentMethodType.Custom)return jr.schemaId===Mr}).map(jr=>jsxs("option",{value:jr.id,children:[jr.type===javascript.Mercoa.PaymentMethodType.BankAccount&&jsxs(Fragment,{children:[jsx(BuildingLibraryIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.accountName?`${jr.accountName} - `:"",jr.bankName," ••••",String(jr.accountNumber).slice(-4)]}),jr.type===javascript.Mercoa.PaymentMethodType.Card&&jsxs(Fragment,{children:[jsx(CreditCardIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.cardBrand," ••••",jr.lastFour]}),jr.type===javascript.Mercoa.PaymentMethodType.Check&&jsxs(Fragment,{children:[jsx(EnvelopeIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),jr.payToTheOrderOf,": ",jr.addressLine1]}),jr.type===javascript.Mercoa.PaymentMethodType.Custom&&jsxs(Fragment,{children:[jsx(BuildingLibraryIcon$1,{className:"mercoa-h-5 mercoa-w-5","aria-hidden":"true"}),findCustomPaymentMethodAccountNameAndNumber(jr).accountName," ",findCustomPaymentMethodAccountNameAndNumber(jr).accountNumber?`••••${String(findCustomPaymentMethodAccountNameAndNumber(jr).accountNumber).slice(-4)}`:""]})]},jr.id)),lr&&((xr=(_r=pr.organization)==null?void 0:_r.paymentMethods)==null?void 0:xr.backupDisbursements.some(jr=>jr.active?jr.type==="custom"?jr.name===Mr:jr.type===Mr:!1))&&jsx("option",{value:"new",children:"Add New"})]}),Or==="new"&&jsxs("div",{className:"mercoa-mt-2",children:[Mr==="bankAccount"&&jsx(AddBankAccountForm,{register:ce,errors:te,watch:nr,setValue:ar,setError:ir,clearErrors:sr}),Mr==="check"&&jsx(AddCheckForm,{register:ce}),Mr.startsWith("cpms_")&&jsx(AddCustomPaymentMethodForm,{register:ce,control:or,schema:re==null?void 0:re.find(jr=>jr.id===Mr)})]})]})}function ApproversSelection({approverSlots:ee,selectedApprovers:re,setSelectedApprovers:ce,hasError:te,formOnChange:nr}){const or=useMercoaSession(),ar=(ir,sr,cr)=>{if(!Array.isArray(sr)&&!Array.isArray(cr))return[];const ur=or.users.filter(mr=>{if(mr.roles.some(dr=>sr.includes(dr))||cr.some(dr=>mr.id===dr))return!0}).map(mr=>{var pr;let dr=!1;return re.find(yr=>(yr==null?void 0:yr.assignedUserId)===mr.id)&&((pr=re[ir])==null?void 0:pr.assignedUserId)!==mr.id&&(dr=!0),{user:mr,disabled:dr}}),fr=ur.filter(mr=>!mr.disabled),hr=ur.filter(mr=>mr.disabled);return fr.concat(hr)};return jsxs("div",{className:"mercoa-space-y-4",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-7 mercoa-text-gray-900 mercoa-mt-5",children:"Approvals"}),te&&jsx("p",{className:"mercoa-text-sm mercoa-text-red-500",children:"Please assign all approvers for this invoice."}),ee.map((ir,sr)=>jsx(ApproverCombobox,{options:ar(sr,ir.eligibleRoles,ir.eligibleUserIds),selectedApprover:or.users.filter(cr=>{if(cr.id===ir.assignedUserId)return!0})[0],setSelectedApprover:cr=>{ce(sr,{assignedUserId:cr,approvalSlotId:ir.approvalSlotId},nr)}},sr))]})}function ApproverCombobox({options:ee,selectedApprover:re,setSelectedApprover:ce}){return jsx(MercoaCombobox,{label:"Assigned to",onChange:te=>{ce(te.id)},value:re,options:ee.map(te=>({disabled:te.disabled,value:te.user})),displayIndex:"name",secondaryDisplayIndex:"email",disabledText:"Already assigned"})}function ApproversAction({approverSlots:ee,invoiceId:re,invoiceStatus:ce,refreshInvoice:te}){const nr=useMercoaSession(),or=ee.find(ir=>{var sr;return ir.assignedUserId===((sr=nr.user)==null?void 0:sr.id)}),ar=ir=>nr.users.find(cr=>cr.id===ir.assignedUserId);return jsxs("div",{className:"mercoa-space-y-4",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-7 mercoa-text-gray-900 mercoa-mt-5",children:"Approvals"}),ee.map(ir=>{let sr=ar(ir);if(sr)return jsx(ApproverWell,{approverSlot:ir,approver:sr},sr.id)}),or&&ce===javascript.Mercoa.InvoiceStatus.New&&jsx(ApproverActionButton,{approverSlot:or,invoiceId:re,refreshInvoice:te})]})}function ApproverWell({approverSlot:ee,approver:re}){let ce="",te;return ee.action===javascript.Mercoa.ApproverAction.None?(ce="mercoa-bg-gray-50",te=jsx(Fragment,{})):ee.action===javascript.Mercoa.ApproverAction.Approve?(ce="mercoa-bg-green-50",te=jsx(CheckCircleIcon$1,{className:"mercoa-h-8 mercoa-w-8 mercoa-text-green-400","aria-hidden":"true"})):ee.action===javascript.Mercoa.ApproverAction.Reject&&(ce="mercoa-bg-red-50",te=jsx(XCircleIcon$1,{className:"mercoa-h-8 mercoa-w-8 mercoa-text-red-400","aria-hidden":"true"})),jsx(Fragment,{children:jsx("div",{className:"mercoa-flex mercoa-items-center",children:jsx("div",{className:"mercoa-flex-auto",children:jsxs("div",{className:classNames("mercoa-flex mercoa-items-center mercoa-rounded-md",ce),children:[jsxs("div",{className:"mercoa-flex-auto mercoa-p-3",children:[jsx("div",{className:classNames("mercoa-text-sm mercoa-font-medium","mercoa-text-grey-900"),children:re.name}),jsx("div",{className:"mercoa-text-sm mercoa-text-gray-500",children:re.email})]}),jsx("div",{className:"mercoa-mx-4 mercoa-flex-shrink-0 mercoa-p-1 mercoa-text-mercoa-primary-text hover:mercoa-opacity-75",children:te})]})})})})}function ApproverActionButton({approverSlot:ee,invoiceId:re,refreshInvoice:ce}){const te=useMercoaSession(),nr=()=>{var ir;const ar={userId:ee.assignedUserId??""};ar.userId&&((ir=te.client)==null||ir.invoice.approval.approve(re,ar).then(()=>{Q$1.success("Invoice approved"),ce(re)}).catch(sr=>{console.log(sr),Q$1.error("There was an error approving this invoice. Please try again.")}))},or=()=>{var ir;const ar={userId:ee.assignedUserId??""};ar.userId&&((ir=te.client)==null||ir.invoice.approval.reject(re,ar).then(()=>{Q$1.success("Invoice rejected"),ce(re)}).catch(sr=>{console.log(sr),Q$1.error("There was an error rejecting this invoice. Please try again.")}))};return jsxs("div",{className:"mercoa-flex mercoa-items-center mercoa-justify-end mercoa-gap-x-2",children:[jsx(MercoaButton,{disabled:ee.action===javascript.Mercoa.ApproverAction.Reject,color:"red",isEmphasized:!0,onClick:or,type:"button",children:"Reject"}),jsx(MercoaButton,{disabled:ee.action===javascript.Mercoa.ApproverAction.Approve,color:"green",isEmphasized:!0,onClick:nr,type:"button",children:"Approve"})]})}function MetadataSelection({schema:ee,value:re,entityMetadata:ce,setValue:te,hasDocument:nr,paymentDestination:or,paymentSource:ar,lineItem:ir,skipValidation:sr}){var lr,ur,fr,hr,mr,dr,pr,yr;if(React$1.useState(!re),ce&&(ce.value=ce.value.filter(Mr=>Mr),ee.type===javascript.Mercoa.MetadataType.KeyValue&&(ce.value=ce.value.filter(Mr=>{try{const Or=dJSON.parse(Mr);return Or.key&&Or.value}catch(Or){console.error(Or)}return!1})),(ce==null?void 0:ce.value.length)===0&&(ce=void 0)),!sr){if((lr=ee.showConditions)!=null&&lr.hasDocument&&!nr)return jsx(Fragment,{});if(ee.type===javascript.Mercoa.MetadataType.KeyValue&&!ce)return jsx(Fragment,{});if((ur=ee.showConditions)!=null&&ur.hasOptions&&!ce)return jsx(Fragment,{});if(ee.lineItem&&!ir)return jsx(Fragment,{});if((fr=ee.showConditions)!=null&&fr.paymentDestinationTypes&&ee.showConditions.paymentDestinationTypes.length>0){if(!or)return jsx(Fragment,{});if(!ee.showConditions.paymentDestinationTypes.includes(or.type))return jsx(Fragment,{});if(ee.showConditions.paymentDestinationTypes.includes("custom")){if(or.type!=javascript.Mercoa.PaymentMethodType.Custom)return jsx(Fragment,{});if(!((mr=(hr=ee.showConditions)==null?void 0:hr.paymentDestinationCustomSchemaIds)!=null&&mr.includes(or.schemaId)))return jsx(Fragment,{})}}if((dr=ee.showConditions)!=null&&dr.paymentSourceTypes&&ee.showConditions.paymentSourceTypes.length>0){if(!ar)return jsx(Fragment,{});if(!ee.showConditions.paymentSourceTypes.includes(ar.type))return jsx(Fragment,{});if(ee.showConditions.paymentSourceTypes.includes("custom")){if(ar.type!=javascript.Mercoa.PaymentMethodType.Custom)return jsx(Fragment,{});if(!((yr=(pr=ee.showConditions)==null?void 0:pr.paymentSourceCustomSchemaIds)!=null&&yr.includes(ar.schemaId)))return jsx(Fragment,{})}}}const cr=jsxs(Fragment,{children:[(ee.type===javascript.Mercoa.MetadataType.String||ee.type===javascript.Mercoa.MetadataType.Number||ee.type===javascript.Mercoa.MetadataType.KeyValue)&&jsx(MetadataCombobox,{schema:ee,setValue:te,value:re,values:(ce==null?void 0:ce.value)??[]}),ee.type===javascript.Mercoa.MetadataType.Boolean&&jsx(MetadataBoolean,{schema:ee,setValue:te,value:re}),ee.type===javascript.Mercoa.MetadataType.Date&&jsx(MetadataDate,{setValue:te,value:re,displayName:ee.displayName})]});return ir?cr:jsxs("div",{children:[jsx("h3",{className:"mercoa-mt-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:ee.displayName}),cr]})}function MetadataCombobox({schema:ee,setValue:re,value:ce,values:te}){let nr=ce;return ee.allowMultiple&&(Array.isArray(ce)?nr=ce:nr=ce==null?void 0:ce.split(",")),ee.type===javascript.Mercoa.MetadataType.KeyValue?jsx(MercoaCombobox,{options:te.map(or=>{let ar={key:"",value:""};try{ar=dJSON.parse(or),ar.value=`${ar.value}`,ar.key=`${ar.key}`}catch(ir){console.error(ir)}return{value:ar,disabled:!1}}),onChange:or=>{re(or.key)},displayIndex:"value",value:dJSON.parse(te.find(or=>{let ar={key:"",value:""};try{ar=dJSON.parse(or),ar.value=`${ar.value}`,ar.key=`${ar.key}`}catch(ir){console.error(ir)}return(ar==null?void 0:ar.key)===`${ce??""}`})??"{}"),multiple:ee.allowMultiple}):jsx(MercoaCombobox,{options:te.map(or=>({value:or,disabled:!1})),onChange:or=>{re(or)},value:nr,multiple:ee.allowMultiple,freeText:!0})}function MetadataDate({setValue:ee,value:re,displayName:ce}){return jsx(er,{className:"mercoa-block mercoa-w-full mercoa-rounded-md mercoa-border-gray-300 sm:mercoa-text-sm",placeholderText:`Select ${ce}`,onChange:te=>{te&&ee(te.toISOString())},selected:(()=>{if(dayjs$1(re).isValid())return dayjs$1(re).toDate()})()})}function MetadataBoolean({schema:ee,setValue:re,value:ce}){return jsxs("div",{className:"mercoa-space-y-4 sm:mercoa-flex sm:mercoa-items-center sm:mercoa-space-x-10 sm:mercoa-space-y-0",children:[jsxs("div",{className:"mercoa-flex mercoa-items-center",children:[jsx("input",{type:"radio",name:`true-false-${ee.key}`,defaultChecked:ce==="true",className:"mercoa-h-4 mercoa-w-4 mercoa-border-gray-300 mercoa-text-mercoa-primary focus:mercoa-ring-mercoa-primary",onChange:()=>re("true")}),jsx("label",{htmlFor:`true-false-${ee.key}`,className:"mercoa-ml-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"Yes"})]}),jsxs("div",{className:"mercoa-flex mercoa-items-center",children:[jsx("input",{type:"radio",name:`true-false-${ee.key}`,defaultChecked:ce==="false",className:"mercoa-h-4 mercoa-w-4 mercoa-border-gray-300 mercoa-text-mercoa-primary focus:mercoa-ring-mercoa-primary",onChange:()=>re("false")}),jsx("label",{htmlFor:`true-false-${ee.key}`,className:"mercoa-ml-3 mercoa-block mercoa-text-sm mercoa-font-medium mercoa-leading-6 mercoa-text-gray-900",children:"No"})]})]})}function LineItems({lineItems:ee,append:re,remove:ce,register:te,currency:nr,watch:or,setValue:ar,entityMetadata:ir,paymentDestination:sr,paymentSource:cr,hasDocument:lr,width:ur}){var hr,mr;const fr=useMercoaSession();return jsxs("div",{className:"mercoa-grid mercoa-grid-cols-1 mercoa-gap-x-6 mercoa-gap-y-4",children:[jsxs("div",{className:"mercoa-flex mercoa-items-center mercoa-mt-5",children:[jsx("h2",{className:"mercoa-text-base mercoa-font-semibold mercoa-leading-6 mercoa-text-gray-700 mercoa-text-lg",children:"Line Items"}),jsxs("button",{onClick:()=>{re({name:"",description:"",amount:0,unitPrice:0,quantity:1})},type:"button",className:"mercoa-ml-4 mercoa-flex-shrink-0 mercoa-col-span-1",children:[jsx(Tooltip,{title:"Add line item",children:jsx(PlusCircleIcon$1,{className:"mercoa-h-5 mercoa-w-5 mercoa-text-gray-400 hover:mercoa-opacity-75","aria-hidden":"true"})}),jsx("span",{className:"mercoa-sr-only",children:"Add line item"})]})]}),jsxs("div",{className:"mercoa-overflow-x-hidden hover:mercoa-overflow-x-visible mercoa-pointer-events-none",children:[jsxs("table",{className:"mercoa-min-w-full mercoa-divide-y mercoa-divide-gray-300 mercoa-w-[600px] mercoa-relative mercoa-mb-6 mercoa-pointer-events-auto",id:"lineItemsTable",children:[jsx("thead",{children:jsxs("tr",{className:"mercoa-divide-x mercoa-divide-gray-200",children:[jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-min-w-[300px]",children:"Description"}),(mr=(hr=fr.organization)==null?void 0:hr.metadataSchema)==null?void 0:mr.filter(dr=>dr.lineItem).map(dr=>jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900 mercoa-min-w-[200px]",children:dr.displayName},dr.key)),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Qty"}),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Price"}),jsx("th",{scope:"col",className:"mercoa-px-4 mercoa-py-3.5 mercoa-text-left mercoa-text-sm mercoa-font-semibold mercoa-text-gray-900",children:"Amount"}),jsx("th",{children:jsx("span",{className:"mercoa-sr-only",children:"Remove"})})]})}),jsx("tbody",{className:"mercoa-divide-y mercoa-divide-gray-200 mercoa-bg-white",children:ee==null?void 0:ee.map((dr,pr)=>jsx(LineItemRow,{currency:nr,index:pr,remove:ce,register:te,watch:or,setValue:ar,entityMetadata:ir,paymentDestination:sr,paymentSource:cr,hasDocument:lr},dr.id))})]}),jsx(LineItemScrollBar,{width:ur})]})]})}function LineItemScrollBar({width:ee}){const re=ee/730*ee,ce=document.getElementById("lineItemsTable");function te(nr){if(ce){const or=ee-re,ar=nr.x/or,sr=((ce==null?void 0:ce.offsetWidth)??0)-re;ce.style.left=`-${ar*sr}px`}}return ee>730?(te({x:0}),jsx(Fragment,{})):jsx("div",{className:"mercoa-w-full mercoa-h-[10px] mercoa-bg-gray-100 mercoa-relative mercoa-pointer-events-auto",children:jsx(Draggable$1,{axis:"x",bounds:"parent",onDrag:(nr,or)=>te(or),children:jsx("div",{className:"mercoa-h-[10px] mercoa-bg-gray-300 hover:mercoa-bg-gray-400 mercoa-absolute mercoa-top-0",style:{width:`${re}px`}})})})}function LineItemRow({currency:ee,index:re,remove:ce,register:te,watch:nr,setValue:or,entityMetadata:ar,paymentDestination:ir,paymentSource:sr,hasDocument:cr}){var ur,fr;const lr=useMercoaSession();return jsxs("tr",{className:"mercoa-divide-x mercoa-divide-gray-200",children:[jsxs("td",{className:"mercoa-whitespace-nowrap mercoa-p-1 mercoa-text-sm mercoa-text-gray-500",children:[" ",jsx("input",{type:"text",className:`mercoa-block mercoa-w-full mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900
|
|
174
174
|
placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6`,...te(`lineItems.${re}.description`)})]}),(fr=(ur=lr.organization)==null?void 0:ur.metadataSchema)==null?void 0:fr.filter(hr=>hr.lineItem).map(hr=>{const mr=nr(`lineItems.${re}.metadata`),dr=hr.key==="glAccountId"?nr(`lineItems.${re}.glAccountId`):nr(`lineItems.${re}.metadata.${hr.key}`);return jsx("td",{className:"mercoa-whitespace-nowrap mercoa-text-sm mercoa-text-gray-500",children:jsx(MetadataSelection,{entityMetadata:ar.find(pr=>pr.key===hr.key),schema:hr,value:dr,hasDocument:cr,paymentDestination:ir,paymentSource:sr,setValue:pr=>{if(Array.isArray(pr)&&(pr=pr.join(",")),hr.key==="glAccountId")or(`lineItems.${re}.glAccountId`,`${pr}`,{shouldDirty:!0,shouldTouch:!0});else{const yr=JSON.parse(JSON.stringify(mr??"{}"));yr[hr.key]=`${pr}`,or(`lineItems.${re}.metadata`,yr,{shouldDirty:!0,shouldTouch:!0})}},lineItem:!0})},hr.key)}),jsx("td",{className:"mercoa-whitespace-nowrap mercoa-p-1 mercoa-text-sm mercoa-text-gray-500",children:jsx("input",{type:"text",className:`mercoa-block mercoa-w-full mercoa-border-0 mercoa-py-1.5 mercoa-text-gray-900
|
|
175
175
|
placeholder:mercoa-text-gray-400 focus:mercoa-ring-2 focus:mercoa-ring-inset focus:mercoa-ring-mercoa-primary sm:mercoa-text-sm sm:mercoa-leading-6`,placeholder:"1",...te(`lineItems.${re}.quantity`)})}),jsx("td",{className:"mercoa-whitespace-nowrap mercoa-p-1 mercoa-text-sm mercoa-text-gray-500",children:jsxs("div",{className:"mercoa-relative",children:[jsx("div",{className:"mercoa-pointer-events-none mercoa-absolute mercoa-inset-y-0 mercoa-left-0 mercoa-flex mercoa-items-center mercoa-pl-3",children:jsx("span",{className:"mercoa-text-gray-500 sm:mercoa-text-sm",children:currencyCodeToSymbol(ee)})}),jsx("input",{type:"text",className:`mercoa-block mercoa-w-full mercoa-border-0 mercoa-py-1.5
|
|
176
176
|
mercoa-text-gray-900
|