ruạṛ
import{aa as M,bJ as R,bL as O,bK as Q,ae as q,bc as p,r as J,e as K,$ as A,h as W,bM as Z,u as z,T as G,a2 as E,cj as V,ck as X,x as Y,p as f,bb as j,j as k,H as N,c as v,W as ee,bQ as te,bR as se,S as ae,aU as ne,bZ as ie}from"./bundle.9abe88c8.js";import{b as oe}from"./blank-invitation-ca06b7b6.js";import{u as re}from"./useInvoiceUtilities-400c192c.js";import{A as ce}from"./AddUninvoicedItemsButton-0680723b.js";/** * Invoice Ninja (https://invoiceninja.com). * * @link https://github.com/invoiceninja/invoiceninja source repository * * @copyright Copyright (c) 2022. Invoice Ninja LLC (https://invoiceninja.com) * * @license https://www.elastic.co/licensing/elastic-license */function ue(r){const x=M(),[s]=R(),{setErrors:c,isDefaultTerms:d,isDefaultFooter:m}=r,h=O(),a=Q(),b=q(Z);return async S=>{p.processing(),c(void 0),await a(!0);let t="/api/v1/invoices?";d?(t+="save_default_terms=true",m&&(t+="&save_default_footer=true")):m&&(t+="save_default_footer=true"),J("POST",K(t),S).then(async l=>{(d||m)&&await h(),p.success("created_invoice"),A(["products","tasks"]),s.get("action")==="invoice_expense"&&A(["expenses"]),x(W("/invoices/:id/edit?table=:table",{id:l.data.data.id,table:s.get("table")??"products"}))}).catch(l=>{var g;if(((g=l.response)==null?void 0:g.status)===422){const _=l.response.data;_.errors.amount?p.error(_.errors.amount[0]):p.dismiss(),c(_)}}).finally(()=>b(void 0))}}function ve(){const{t:r}=z(),{documentTitle:x}=G("new_invoice"),[s,c]=E(ne),{data:d,isLoading:m}=V({enabled:typeof s>"u"}),h=X(),a=Y(),[b,S]=E(ie),[t]=R(),[l,g]=f.useState(),[_,U]=f.useState(),[D,w]=f.useState(!1),[T,F]=f.useState(!1),P=[{name:r("invoices"),href:"/invoices"},{name:r("new_invoice"),href:"/invoices/create"}],B=[{name:r("create"),href:"/invoices/create"},{name:r("documents"),href:"/invoices/create/documents"},{name:r("settings"),href:"/invoices/create/settings"}],{handleChange:u,calculateInvoiceSum:H}=re({client:_}),L=ue({setErrors:g,isDefaultTerms:D,isDefaultFooter:T});f.useEffect(()=>(S(void 0),c(e=>{var o;let i=e;if(t.get("action")!=="clone"&&t.get("action")!=="invoice_project"&&t.get("action")!=="invoice_task"&&t.get("action")!=="invoice_expense"&&t.get("action")!=="invoice_product"&&(i=void 0),typeof d<"u"&&typeof i>"u"&&t.get("action")!=="clone"){const n=j.cloneDeep(d);typeof n.line_items=="string"&&(n.line_items=[]),t.get("client")&&(n.client_id=t.get("client")),n.uses_inclusive_taxes=((o=a==null?void 0:a.settings)==null?void 0:o.inclusive_taxes)??!1,i=n}return i}),()=>{t.get("action")!=="clone"&&t.get("action")!=="invoice_project"&&t.get("action")!=="invoice_task"&&t.get("action")!=="invoice_expense"&&t.get("action")!=="invoice_product"&&c(void 0)}),[d]);const C=(e,i)=>{var o,n,y,I,$;return(o=e==null?void 0:e.settings)!=null&&o[`tax_name${i}`]?{name:e.settings[`tax_name${i}`],rate:e.settings[`tax_rate${i}`]}:(y=(n=e==null?void 0:e.group_settings)==null?void 0:n.settings)!=null&&y[`tax_name${i}`]?{name:(I=e==null?void 0:e.group_settings)==null?void 0:I.settings[`tax_name${i}`],rate:($=e==null?void 0:e.group_settings)==null?void 0:$.settings[`tax_rate${i}`]}:{name:a==null?void 0:a.settings[`tax_name${i}`],rate:a==null?void 0:a.settings[`tax_rate${i}`]}};return f.useEffect(()=>{s&&s.client_id.length>1&&h.find(s.client_id).then(e=>{U(e);const i=[];if(e.contacts.map(o=>{if(o.send_email){const n=j.cloneDeep(oe);n.client_contact_id=o.id,i.push(n)}}),u("invitations",i),!e.is_tax_exempt){if(a&&a.enabled_tax_rates>0&&t.get("action")!=="clone"){const{name:o,rate:n}=C(e,"1");u("tax_name1",o),u("tax_rate1",n)}if(a&&a.enabled_tax_rates>1&&t.get("action")!=="clone"){const{name:o,rate:n}=C(e,"2");u("tax_name2",o),u("tax_rate2",n)}if(a&&a.enabled_tax_rates>2&&t.get("action")!=="clone"){const{name:o,rate:n}=C(e,"3");u("tax_name3",o),u("tax_rate3",n)}}})},[s==null?void 0:s.client_id]),f.useEffect(()=>{s&&H(s)},[s]),k(N,{children:[v(ee,{title:x,breadcrumbs:P,onSaveClick:()=>L(s),disableSaveButton:(s==null?void 0:s.client_id.length)===0,children:m?v("div",{className:"flex justify-center items-center",children:v(ae,{})}):k("div",{className:"space-y-4",children:[v(te,{tabs:B}),v(se,{context:{invoice:s,setInvoice:c,errors:l,isDefaultTerms:D,setIsDefaultTerms:w,isDefaultFooter:T,setIsDefaultFooter:F,client:_,invoiceSum:b}})]})}),v(ce,{invoice:s,setInvoice:c})]})}export{ve as default};
cải xoăn