mirror of
https://github.com/crater-invoice/crater.git
synced 2025-10-27 11:41:09 -04:00
2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
var X=Object.defineProperty,Y=Object.defineProperties;var Z=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var ee=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable;var D=(e,i,d)=>i in e?X(e,i,{enumerable:!0,configurable:!0,writable:!0,value:d}):e[i]=d,j=(e,i)=>{for(var d in i||(i={}))ee.call(i,d)&&D(e,d,i[d]);if(N)for(var d of N(i))ne.call(i,d)&&D(e,d,i[d]);return e},x=(e,i)=>Y(e,Z(i));import{u as E,i as k,j as ie,k as h,D as P,M as te,r as g,o as I,c as O,t as m,b as r,y as n,x as L,w as u,s as _,A as C,F as A,a9 as re,g as ae,C as oe,m as y,n as q,aU as T,O as le,q as se,z as ce,v as ue,B as de}from"./vendor.e9042f2c.js";import{_ as ge,a as ve,b as me,c as fe,d as ye,e as Ie}from"./ItemModal.6c4a6110.js";import{B as G,m as be,c as $e,l as we}from"./main.f55cd568.js";import{_ as _e}from"./ExchangeRateConverter.2eb3213d.js";import{_ as qe}from"./CreateCustomFields.31e45d63.js";import{_ as Re}from"./TaxTypeModal.2309f47d.js";import"./DragIcon.0cd95723.js";import"./SelectNotePopup.8c3a3989.js";import"./NoteModal.0435aa4f.js";const pe={class:"col-span-5 pr-0"},Be={class:"flex mt-7"},he={class:"relative w-20 mt-8"},Ve={class:"ml-2"},Ce={class:"p-0 mb-1 leading-snug text-left text-black"},Se={class:"p-0 m-0 text-xs leading-tight text-left text-gray-500",style:{"max-width":"480px"}},Fe={class:"grid grid-cols-1 col-span-7 gap-4 mt-8 lg:gap-6 lg:mt-0 lg:grid-cols-2"},Le={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(e){const i=e,d=E(),t=G(),R=be(),c=k(!1),f=ie([{label:"None",value:"NONE"},{label:"Date",value:"DATE"},{label:"Count",value:"COUNT"}]),S=h(()=>t.newRecurringInvoice.selectedFrequency&&t.newRecurringInvoice.selectedFrequency.value==="CUSTOM"),F=h(()=>i.isEdit?R.config.recurring_invoice_status.update_status:R.config.recurring_invoice_status.create_status);P(()=>t.newRecurringInvoice.selectedFrequency,l=>{t.isFetchingInitialSettings||(l&&l.value!=="CUSTOM"?t.newRecurringInvoice.frequency=l.value:t.newRecurringInvoice.frequency=null)}),te(()=>{d.params.id||B()});function $(l){return t.newRecurringInvoice.limit_by===l}const p=re(()=>{B()},500);async function B(){const l=t.newRecurringInvoice.frequency;if(!l)return;c.value=!0;let a={starts_at:t.newRecurringInvoice.starts_at,frequency:l};try{await t.fetchRecurringInvoiceFrequencyDate(a)}catch(b){console.error(b),c.value=!1}c.value=!1}return(l,a)=>{const b=g("BaseCustomerSelectPopup"),M=g("BaseSwitch"),V=g("BaseDatePicker"),o=g("BaseInputGroup"),v=g("BaseMultiselect"),w=g("BaseInput");return I(),O(A,null,[m("div",pe,[r(b,{modelValue:n(t).newRecurringInvoice.customer,"onUpdate:modelValue":a[0]||(a[0]=s=>n(t).newRecurringInvoice.customer=s),valid:e.v.customer_id,"content-loading":e.isLoading,type:"recurring-invoice"},null,8,["modelValue","valid","content-loading"]),m("div",Be,[m("div",he,[r(M,{modelValue:n(t).newRecurringInvoice.send_automatically,"onUpdate:modelValue":a[1]||(a[1]=s=>n(t).newRecurringInvoice.send_automatically=s),class:"absolute -top-4"},null,8,["modelValue"])]),m("div",Ve,[m("p",Ce,L(l.$t("recurring_invoices.send_automatically")),1),m("p",Se,L(l.$t("recurring_invoices.send_automatically_desc")),1)])])]),m("div",Fe,[r(o,{label:l.$t("recurring_invoices.starts_at"),"content-loading":e.isLoading,required:"",error:e.v.starts_at.$error&&e.v.starts_at.$errors[0].$message},{default:u(()=>[r(V,{modelValue:n(t).newRecurringInvoice.starts_at,"onUpdate:modelValue":a[2]||(a[2]=s=>n(t).newRecurringInvoice.starts_at=s),"content-loading":e.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar",invalid:e.v.starts_at.$error,onChange:a[3]||(a[3]=s=>B())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),r(o,{label:l.$t("recurring_invoices.next_invoice_date"),"content-loading":e.isLoading,required:""},{default:u(()=>[r(V,{modelValue:n(t).newRecurringInvoice.next_invoice_at,"onUpdate:modelValue":a[4]||(a[4]=s=>n(t).newRecurringInvoice.next_invoice_at=s),"content-loading":e.isLoading,"calendar-button":!0,disabled:!0,loading:c.value,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading","loading"])]),_:1},8,["label","content-loading"]),r(o,{label:l.$t("recurring_invoices.limit_by"),"content-loading":e.isLoading,class:"lg:mt-0",required:"",error:e.v.limit_by.$error&&e.v.limit_by.$errors[0].$message},{default:u(()=>[r(v,{modelValue:n(t).newRecurringInvoice.limit_by,"onUpdate:modelValue":a[5]||(a[5]=s=>n(t).newRecurringInvoice.limit_by=s),"content-loading":e.isLoading,options:n(f),label:"label",invalid:e.v.limit_by.$error,"value-prop":"value"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),$("DATE")?(I(),_(o,{key:0,label:l.$t("recurring_invoices.limit_date"),"content-loading":e.isLoading,required:$("DATE"),error:e.v.limit_date.$error&&e.v.limit_date.$errors[0].$message},{default:u(()=>[r(V,{modelValue:n(t).newRecurringInvoice.limit_date,"onUpdate:modelValue":a[6]||(a[6]=s=>n(t).newRecurringInvoice.limit_date=s),"content-loading":e.isLoading,invalid:e.v.limit_date.$error,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","required","error"])):C("",!0),$("COUNT")?(I(),_(o,{key:1,label:l.$t("recurring_invoices.count"),"content-loading":e.isLoading,required:$("COUNT"),error:e.v.limit_count.$error&&e.v.limit_count.$errors[0].$message},{default:u(()=>[r(w,{modelValue:n(t).newRecurringInvoice.limit_count,"onUpdate:modelValue":a[7]||(a[7]=s=>n(t).newRecurringInvoice.limit_count=s),"content-loading":e.isLoading,invalid:e.v.limit_count.$error,type:"number"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","required","error"])):C("",!0),r(o,{label:l.$t("recurring_invoices.status"),required:"","content-loading":e.isLoading,error:e.v.status.$error&&e.v.status.$errors[0].$message},{default:u(()=>[r(v,{modelValue:n(t).newRecurringInvoice.status,"onUpdate:modelValue":a[8]||(a[8]=s=>n(t).newRecurringInvoice.status=s),options:n(F),"content-loading":e.isLoading,invalid:e.v.status.$error,placeholder:l.$t("recurring_invoices.select_a_status"),"value-prop":"value",label:"value"},null,8,["modelValue","options","content-loading","invalid","placeholder"])]),_:1},8,["label","content-loading","error"]),r(o,{label:l.$t("recurring_invoices.frequency.select_frequency"),required:"","content-loading":e.isLoading,error:e.v.selectedFrequency.$error&&e.v.selectedFrequency.$errors[0].$message},{default:u(()=>[r(v,{modelValue:n(t).newRecurringInvoice.selectedFrequency,"onUpdate:modelValue":a[9]||(a[9]=s=>n(t).newRecurringInvoice.selectedFrequency=s),"content-loading":e.isLoading,options:n(t).frequencies,label:"label",invalid:e.v.selectedFrequency.$error,object:"",onChange:B},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),n(S)?(I(),_(o,{key:2,label:l.$t("recurring_invoices.frequency.title"),"content-loading":e.isLoading,required:"",error:e.v.frequency.$error&&e.v.frequency.$errors[0].$message},{default:u(()=>[r(w,{modelValue:n(t).newRecurringInvoice.frequency,"onUpdate:modelValue":[a[10]||(a[10]=s=>n(t).newRecurringInvoice.frequency=s),n(p)],"content-loading":e.isLoading,disabled:!n(S),invalid:e.v.frequency.$error,loading:c.value},null,8,["modelValue","content-loading","disabled","invalid","loading","onUpdate:modelValue"])]),_:1},8,["label","content-loading","error"])):C("",!0),r(_e,{store:n(t),"store-prop":"newRecurringInvoice",v:e.v,"is-loading":e.isLoading,"is-edit":e.isEdit,"customer-currency":n(t).newRecurringInvoice.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])])],64)}}},Me=["onSubmit"],ke={class:"flex"},Te={class:"grid-cols-12 gap-8 mt-6 mb-8 lg:grid"},Ue={class:"block mt-10 invoice-foot lg:flex lg:justify-between lg:items-start"},Ne={class:"w-full relative lg:w-1/2"},Je={setup(e){const i=G(),d=$e(),t=we(),R="newRecurringInvoice",{t:c}=ae();let f=k(!1);const S=k(["customer","company","customerCustom","invoice","invoiceCustom"]);let F=E(),$=oe(),p=h(()=>i.isFetchingInvoice||i.isFetchingInitialSettings),B=h(()=>l.value?c("recurring_invoices.edit_invoice"):c("recurring_invoices.new_invoice")),l=h(()=>F.name==="recurring-invoices.edit");const a={starts_at:{required:y.withMessage(c("validation.required"),q)},status:{required:y.withMessage(c("validation.required"),q)},frequency:{required:y.withMessage(c("validation.required"),q)},limit_by:{required:y.withMessage(c("validation.required"),q)},limit_date:{required:y.withMessage(c("validation.required"),T(function(){return i.newRecurringInvoice.limit_by==="DATE"}))},limit_count:{required:y.withMessage(c("validation.required"),T(function(){return i.newRecurringInvoice.limit_by==="COUNT"}))},selectedFrequency:{required:y.withMessage(c("validation.required"),q)},customer_id:{required:y.withMessage(c("validation.required"),q)},exchange_rate:{required:T(function(){return y.withMessage(c("validation.required"),q),i.showExchangeRate}),decimal:y.withMessage(c("validation.valid_exchange_rate"),le)}},b=se(a,h(()=>i.newRecurringInvoice),{$scope:R});i.resetCurrentRecurringInvoice(),i.fetchRecurringInvoiceInitialSettings(l.value),t.resetCustomFields(),b.value.$reset,P(()=>i.newRecurringInvoice.customer,o=>{o&&o.currency?i.newRecurringInvoice.currency=o.currency:i.newRecurringInvoice.currency=d.selectedCompanyCurrency});async function M(){if(b.value.$touch(),b.value.$invalid)return!1;f.value=!0;let o=x(j({},i.newRecurringInvoice),{sub_total:i.getSubTotal,total:i.getTotal,tax:i.getTotalTax});F.params.id?i.updateRecurringInvoice(o).then(v=>{v.data.data&&$.push(`/admin/recurring-invoices/${v.data.data.id}/view`),f.value=!1}).catch(v=>{f.value=!1}):V(o)}function V(o){i.addRecurringInvoice(o).then(v=>{v.data.data&&$.push(`/admin/recurring-invoices/${v.data.data.id}/view`),f.value=!1}).catch(v=>{f.value=!1})}return(o,v)=>{const w=g("BaseBreadcrumbItem"),s=g("BaseBreadcrumb"),U=g("BaseButton"),z=g("router-link"),H=g("BaseIcon"),J=g("BasePageHeader"),K=g("BaseScrollPane"),Q=g("BasePage");return I(),O(A,null,[r(ge),r(ve),r(Re),r(Q,{class:"relative invoice-create-page"},{default:u(()=>[m("form",{onSubmit:de(M,["prevent"])},[r(J,{title:n(B)},{actions:u(()=>[r(z,{to:`/invoices/pdf/${n(i).newRecurringInvoice.unique_hash}`},{default:u(()=>[o.$route.name==="invoices.edit"?(I(),_(U,{key:0,target:"_blank",class:"mr-3",variant:"primary-outline",type:"button"},{default:u(()=>[m("span",ke,L(o.$t("general.view_pdf")),1)]),_:1})):C("",!0)]),_:1},8,["to"]),r(U,{loading:n(f),disabled:n(f),variant:"primary",type:"submit"},{left:u(W=>[n(f)?C("",!0):(I(),_(H,{key:0,name:"SaveIcon",class:ce(W.class)},null,8,["class"]))]),default:u(()=>[ue(" "+L(o.$t("recurring_invoices.save_invoice")),1)]),_:1},8,["loading","disabled"])]),default:u(()=>[r(s,null,{default:u(()=>[r(w,{title:o.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),r(w,{title:o.$t("recurring_invoices.title",2),to:"/admin/recurring-invoices"},null,8,["title"]),o.$route.name==="invoices.edit"?(I(),_(w,{key:0,title:o.$t("recurring_invoices.edit_invoice"),to:"#",active:""},null,8,["title"])):(I(),_(w,{key:1,title:o.$t("recurring_invoices.new_invoice"),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),m("div",Te,[r(Le,{v:n(b),"is-loading":n(p),"is-edit":n(l)},null,8,["v","is-loading","is-edit"])]),r(K,null,{default:u(()=>[r(me,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(p),"item-validation-scope":R,store:n(i),"store-prop":"newRecurringInvoice"},null,8,["currency","is-loading","store"]),m("div",Ue,[m("div",Ne,[r(fe,{store:n(i),"store-prop":"newRecurringInvoice",fields:S.value,type:"Invoice"},null,8,["store","fields"]),r(qe,{type:"Invoice","is-edit":n(l),"is-loading":n(p),store:n(i),"store-prop":"newRecurringInvoice","custom-field-scope":R,class:"mb-6"},null,8,["is-edit","is-loading","store"]),r(ye,{store:n(i),"store-prop":"newRecurringInvoice"},null,8,["store"])]),r(Ie,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(p),store:n(i),"store-prop":"newRecurringInvoice","tax-popup-type":"invoice"},null,8,["currency","is-loading","store"])])]),_:1})],40,Me)]),_:1})],64)}}};export{Je as default};
|